Страница 36 из 39

Re: Yii2-Start альтернативный шаблон для быстрого старта нового проекта.

Добавлено: 2015.04.06, 12:52
bakhur
я посмотрел у вас смысл в том что всё через модули сделано. А правильно будет если я захочу что-то добавить и сделать не через модуль, а по обычному прописать контроллер для админки к примеру по пути backend/controllers? или всё таки лучше сохранить модульную структуру

Re: Yii2-Start альтернативный шаблон для быстрого старта нового проекта.

Добавлено: 2015.04.06, 14:13
bakhur
Есть ещё небольшой вопрос по правам, а для чего rules? как их использовать?

Re: Yii2-Start альтернативный шаблон для быстрого старта нового проекта.

Добавлено: 2015.04.06, 15:00
bakhur
есть глупый вопрос не могу понять почему запись в конфиге
'admin' => [
'class' => 'vova07\admin\Module'
],
соответствует такому пути vendor\vova07\yii2-start-admin-module\Module , как из admin получают yii2-start-admin-module ?

Re: Yii2-Start альтернативный шаблон для быстрого старта нового проекта.

Добавлено: 2015.04.06, 15:15
bakhur
и небольшой вопрос как мне правильно расширить ваши модули? мне же не надо прописывать свой код в vendor

Re: Yii2-Start альтернативный шаблон для быстрого старта нового проекта.

Добавлено: 2015.04.06, 15:47
bakhur
странно почему-то не могу установить https://github.com/phemellc/yii2-i18n-url , выкидывает вот такую ошибку
Your requirements could not be resolved to an installable set of packages.

Problem 1
- The requested package pheme/yii2-i18n-url could not be found in any version, there may be a typo in the package name.

Potential causes:
- A typo in the package name
- The package is not available in a stable-enough version according to your minimum-stability setting
see <https://groups.google.com/d/topic/compo ... discussion> for more details.

Read <http://getcomposer.org/doc/articles/troubleshooting.md> for further common problems.

Installation failed, reverting ./composer.json to its original content.

Хотя на чистую версию yii2 advanced ставится

Re: Yii2-Start альтернативный шаблон для быстрого старта нового проекта.

Добавлено: 2015.04.06, 16:09
vova07
bakhur писал(а):А мультиязычности нет?
На данный момент нет.
bakhur писал(а):я посмотрел у вас смысл в том что всё через модули сделано. А правильно будет если я захочу что-то добавить и сделать не через модуль, а по обычному прописать контроллер для админки к примеру по пути backend/controllers? или всё таки лучше сохранить модульную структуру
Это на ваше усмотрение. Конкретно к методу структуризации папок и файлов в моем приложении нет ограничений. Если вам нравятся контролеры и приложение у вас не такое сложное, то они вполне подойдут вам. Если нравятся модули можно делать модулями. В общем и модули и обычная структура будут правильным решением. У меня это так сделано чтобы их можно было устанавливать или удалять по необходимости.
bakhur писал(а):Есть ещё небольшой вопрос по правам, а для чего rules? как их использовать?
Rules - используются для специфических проверок. Они могут содержать сложные типы проверок с сложной и запутанной логикой, но так как это все делается в отдельном классе в них удобно разбираться.
Конкретно в моем случае "rules" используются для дефолтных правил. То есть через них проверяются очень тупым но быстрым методом права текущего пользователя. Это было сделано для того чтобы ускорить процесс проверок прав пользователя, в то время кэширование RBAC в фреймворке еще не было. В повседневной жизни они могут понадобится в сложных системах где проверка правил доступа пользователя нестандартная.
bakhur писал(а):как из admin получают yii2-start-admin-module ?
Через алиас. Он примерно такого вида:

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

'alias' => 
    array (
      '@vova07/admin' => $vendorDir . '/vova07/yii2-start-admin-module',
    ),
и прописан он в файле: 'vendor/yiisoft/extensions.php' который в свою очередь создается компосером. А компосер сам берет нужную информацию из самого пакета расширения: https://github.com/vova07/yii2-start-ad ... r.json#L22
bakhur писал(а):и небольшой вопрос как мне правильно расширить ваши модули? мне же не надо прописывать свой код в vendor
В вендор что-то писать точно не надо. Это самый плохой метод.

Правильно будет вот так:
- для представлений: https://github.com/vova07/yii2-start/issues/94
- для контроллеров используем "classMap" или "controllerNamespace" модуля.
- для моделях используем DI и перекрываем нужный класс своим.

В скором будущем будет сделан полный рефакторинг расширений для получения 100% гибкости и перекрываемости. также будут добавлены живые примеры как и где перекрывать те или иные части приложения.

Re: Yii2-Start альтернативный шаблон для быстрого старта нового проекта.

Добавлено: 2015.04.06, 16:13
vova07
bakhur писал(а):странно почему-то не могу установить https://github.com/phemellc/yii2-i18n-url , выкидывает вот такую ошибку
Your requirements could not be resolved to an installable set of packages.

Problem 1
- The requested package pheme/yii2-i18n-url could not be found in any version, there may be a typo in the package name.

Potential causes:
- A typo in the package name
- The package is not available in a stable-enough version according to your minimum-stability setting
see <https://groups.google.com/d/topic/compo ... discussion> for more details.

Read <http://getcomposer.org/doc/articles/troubleshooting.md> for further common problems.

Installation failed, reverting ./composer.json to its original content.

Хотя на чистую версию yii2 advanced ставится
Данная проблема вероятнее всего связана с минимальной стабильной версии пакетов. В Yii2-Start используются только стабильные версии, в адвэнсэд же допускаются и девелопмент. Если вам нужен данный эктеншен и вас не пугают девелопмент версии пакетов, то вы можете изменить стабильность здесь: https://github.com/vova07/yii2-start/bl ... r.json#L19 вместо стэбл нужно прописать дев. То есть получится такое:

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

"minimum-stability": "dev"
После, запускаем повторный "composer update" и все должно установится.

Re: Yii2-Start альтернативный шаблон для быстрого старта нового проекта.

Добавлено: 2015.04.06, 21:22
bakhur
ага спасибо за ответы. у меня ещё вопросы есть по мультиязычности http://look.360focus.pro/ - вот тут в верхнем меню есть переключение, сделал чтобы в куки заносилась текущая локаль, только вот вопрос у меня срабатывает только на фронтенд. как сделать чтобы и backend подтягивался. в файле вот как прописал установку локали
Yii::$app->response->cookies->remove('lang');
Yii::$app->response->cookies->add(new \yii\web\Cookie([
'name' => 'lang',
'value' => $lang
]));
$lang = LangRequest::getCode($lang);
Yii::$app->language = $lang;
Yii::$app->formatter->locale = $lang;

и в конфиге common/main задал
'request' => [
'class' => 'common\components\LangRequest'
],

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

Re: Yii2-Start альтернативный шаблон для быстрого старта нового проекта.

Добавлено: 2015.04.06, 21:49
bakhur
да и забыл спросить что сделать чтобы в url прописывался язык, так http://siteurl/ru/page

Re: Yii2-Start альтернативный шаблон для быстрого старта нового проекта.

Добавлено: 2015.04.07, 20:01
vova07
@bakhur к сожалению последние вопросы не имеют отношения к моему приложению, по этому конкретного ответа в этом топике не смогу дать. Рекомендую вам создать отдельные темы для решения этих проблем в соответсвующий разделах форума, уверен там больше людей смогут вам помочь. Надеюсь на ваше понимание!

Re: Yii2-Start альтернативный шаблон для быстрого старта нового проекта.

Добавлено: 2015.04.08, 22:35
bakhur
ага ок. Тогда не могли бы ответить как ваши модули расширять правильно. Т.е к примеру хочу расширить модуль админки добавить несколько action контроллера default. куда мне их прописывать?

Re: Yii2-Start альтернативный шаблон для быстрого старта нового проекта.

Добавлено: 2015.04.08, 22:43
bakhur
как я понимаю надо сделать свой модуль который расширяет ваш и в конфигурации прописать свой модуль. только вот не особо понимаю как всё это сделать.
'admin' => [
'class' => 'vova07\admin\Module'
],

Re: Yii2-Start альтернативный шаблон для быстрого старта нового проекта.

Добавлено: 2015.04.09, 01:09
timezero
bakhur писал(а):ага ок. Тогда не могли бы ответить как ваши модули расширять правильно. Т.е к примеру хочу расширить модуль админки добавить несколько action контроллера default. куда мне их прописывать?
тему то бы полистали хотя б..

раз два три

Re: Yii2-Start альтернативный шаблон для быстрого старта нового проекта.

Добавлено: 2015.04.09, 01:19
timezero
автору спасибо за отличную работу, за пару дней разобрался что и как,

кстати неплохо встраиваются элементы от kartik-v
img.png
img.png (74.08 КБ) 6938 просмотров

Re: Yii2-Start альтернативный шаблон для быстрого старта нового проекта.

Добавлено: 2015.04.09, 22:23
bakhur
А можно задать один вопрос как взаимодействуют между собой таблица blogs и комментарии? а то что-то посмотрел в таблицу комментариев что-то не очень понятно. Просто в таблицу blogs хочу выводить ещё кол-во комментариев

Re: Yii2-Start альтернативный шаблон для быстрого старта нового проекта.

Добавлено: 2015.04.10, 13:56
bakhur
И не могли бы вы пояснить как подгружаются layout для админки к примеру. Я просто наглядно задания layout не увидел , типо такого в базовом контроллере прописываем свойство $layout = 'main';

Re: Yii2-Start альтернативный шаблон для быстрого старта нового проекта.

Добавлено: 2015.04.10, 21:45
vova07
bakhur писал(а):А можно задать один вопрос как взаимодействуют между собой таблица blogs и комментарии? а то что-то посмотрел в таблицу комментариев что-то не очень понятно. Просто в таблицу blogs хочу выводить ещё кол-во комментариев
Они связаны через идентификатор самой записи, и уникальным идентифиактором модели блога. То есть в таблице комментариев есть два поля для связки: model_id -> это ИД записи, и model_class -> ИД класса модели, который находится в отдельной таблице.
bakhur писал(а):И не могли бы вы пояснить как подгружаются layout для админки к примеру. Я просто наглядно задания layout не увидел , типо такого в базовом контроллере прописываем свойство $layout = 'main';
Шаблон явно не задан так как по дефолту используется именно main лэйаут.

Re: Yii2-Start альтернативный шаблон для быстрого старта нового проекта.

Добавлено: 2015.04.13, 14:17
bakhur
спасибо

Re: Yii2-Start альтернативный шаблон для быстрого старта нового проекта.

Добавлено: 2015.04.13, 15:26
bakhur
Вот тут при установке модуля https://github.com/DrMabuse23/yii2-sir-trevor-js выбивает http://prntscr.com/6t6wki . Из-за чего это, вроде бы гит же используется, другие модули ставятся

Re: Yii2-Start альтернативный шаблон для быстрого старта нового проекта.

Добавлено: 2015.04.14, 14:56
bakhur
Подскажите пожалуйста детальней как сделать переопределение модуля. посмотрел вот тут viewtopic.php?f=9&t=16414&start=380#p115958 про переопределение самого модуля понял, про контроллеры тоже ясно, а вот про модели и вид вообще не понятно. Для переопределения модели нужно прописывать
\Yii::$container->set(
'vova07\blogs\models\Blog',
[
'class' => 'my\new\module\models\Blog'
]
); - и напрашивается куда это ставить , в конфиг backend/main ставил после return, ничего не происходит. А с видами как сделать, что значит шаблон сделать (дайте живой пример)