AssetBundle и ссылки на css файл [Решено]

Общие вопросы по использованию второй версии фреймворка. Если не знаете как что-то сделать и это про Yii 2, вам сюда.
Ответить
nepster
Сообщения: 838
Зарегистрирован: 2013.01.02, 03:35

AssetBundle и ссылки на css файл [Решено]

Сообщение nepster »

Обновился композером и заметил, что у меня перестала работать одна штука.


У меня есть папка statics, где хранятся все изображения и дополнительные клиентские файлы. Доступ к этому осуществляется вот так:
site.ru/statics

У меня есть файл:
statics\css\avatar.css

Который используется в нескольких приложениях, поэтому я разместил его там, чтобы не копировать кучу раз.


Раньше у меня был прописан вот такой код:

Код: Выделить всё

<?php
namespace business\modules\site\assets;

use Yii;
use yii\web\AssetBundle;

class AppAsset extends AssetBundle
{
    public $sourcePath = '@business/modules/site/assets';
     
    public $css = [
        '/statics/css/avatar.css',
    ];
    
    
    public $js = [
    ];
    
    public $depends = [
        'yii\web\JqueryAsset',
        'yii\bootstrap\BootstrapPluginAsset'
    ];
}

Раньше если указать вот так statics/css/avatar.css (тоесть без слеша впереди), то yii2 пытался подгрузить файл из самого модуля, если указать слеш перед /statics/css/avatar.css, то ссылка так и оставалась.

Сейчас у меня вышло:

Код: Выделить всё

<link href="/assets/e2c23026//statics/css/avatar.css" rel="stylesheet">

Вопрос, как теперь указать просто:

Код: Выделить всё

<link href="/statics/css/avatar.css" rel="stylesheet">
Последний раз редактировалось nepster 2014.09.22, 16:22, всего редактировалось 1 раз.
Shappy
Сообщения: 86
Зарегистрирован: 2013.09.19, 12:31

Re: AssetBundle и ссылки на css файл

Сообщение Shappy »

Раньше если указать вот так statics/css/avatar.css (тоесть без слеша впереди), то yii2 пытался подгрузить файл из самого модуля
По-моему это не правильно, не должно браться из самого модуля... эта css должна копироваться в asset, откуда и должна забираться... А ссылка так и должна быть... /statics/css/avatar.css
Может я чего-то не понял...
nepster
Сообщения: 838
Зарегистрирован: 2013.01.02, 03:35

Re: AssetBundle и ссылки на css файл

Сообщение nepster »

statics это не модуль. Это директория со статикой.
Аватара пользователя
yiijeka
Сообщения: 3103
Зарегистрирован: 2012.01.28, 09:14
Откуда: Беларусь
Контактная информация:

Re: AssetBundle и ссылки на css файл

Сообщение yiijeka »

Указать просто <link href="/statics/css/avatar.css" rel="stylesheet">
Либо не указывайте sourcePath
nepster
Сообщения: 838
Зарегистрирован: 2013.01.02, 03:35

Re: AssetBundle и ссылки на css файл

Сообщение nepster »

так остальные стили мне как раз нужны так как он делает, это только 1 персональный случай.

накопал вот такое:

Код: Выделить всё

    public function registerAssetFiles($view)
    {
        $this->css[] = Yii::$app->params['staticsDomain'].'/css/avatar.css';
        parent::registerAssetFiles($view);
    } 
Ответить