CakePHP 3: определение глобальной постоянной переменной

Я работаю над проектом CakePHP 3, который немного велик.

Я хочу, чтобы мое приложение было максимально чистым, отделяя все медиа-файлы от основного приложения, и поэтому я должен хранить все медиа-файлы на отдельном поддомене какmedia.myproject.com и проект доступен изwww.myproject.com.

Также вmedia.myproject.com может быть многоdirectories как

/root
|- users
   |- avatar
   |- cover
|- services
   |- logo
   |- banner
   |- slides
|- clients
   |- logo
   |- avatar
|- etc
   |- etc
   |- etc
   |- etc

Теперь, чтобы иметь возможность доступа к файлам в приложенииview Я хочу установить глобальные переменные, которые я могу использовать в любомview лайк

<img src="<?= $media.$mediaUser.$userAvatar.$user->avatar ?>" />

Как я мог это сделать?

Ответы на вопрос(1)

Решение Вопроса

Вы можете сделать что-то вроде этого:

конфиг / Bootstrap.php

Configure::write('Media', array(
        'users' => array(
            'avatar' => 'media.myproject.com/users/avatar/',
            'cover'  => 'media.myproject.com/users/cover/'  
        ),
        'services' => array(
            'logo' => 'media.myproject.com/services/logo/',
            'banner'  => 'media.myproject.com/services/banner/' 
        )
 ));

YourView.ctp

<?php use Cake\Core\Configure; ?> 

<img src="<?= Configure::read('Media.users.avatar').$user->avatar ?>" />
 Isengo01 окт. 2016 г., 17:15
Попробую это тоже. Но по умолчанию не работает: /
 Anuj TBE11 июн. 2016 г., 11:54
Ух ты, здорово. Спасибо огромное.
 art-fan-vikram23 мар. 2018 г., 08:41
Мне интересно, почему это определение ("CONSTANT_NAME", "VALUE"); не предлагается Когда это кажется простым, я использовал этот подход в версиях Cakephp 2.x
 Anuj TBE30 июн. 2016 г., 07:57
С помощью<?php use Cake\Core\Configure; ?> вdefault.ctp макет не работает, однако он работает на добавление его в файлы просмотра. Как это может быть использовано вdefault.ctp

Ваш ответ на вопрос