Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Работа с разделами #2

Closed
niksamokhvalov opened this issue Oct 16, 2016 · 8 comments

Comments

Projects
None yet
3 participants
@niksamokhvalov
Copy link
Owner

commented Oct 16, 2016

Добавить пример работы с зависимыми хелперами. Например, сделать категории новостей.

@unnamed777

This comment has been minimized.

Copy link

commented Feb 1, 2017

Имеется ли хотя бы нерабочий пример того, как правильно разделы использовать? Пытаюсь их завести, но слишком много неоднозначностей. Не нужно решения "нажал кнопку и заработало", просто классы интерфейсов и хелперов элементов и разделов, чтобы понять, как правильно использовать.

@niksamokhvalov

This comment has been minimized.

Copy link
Owner Author

commented Feb 1, 2017

Давайте я поищу в старых проектах, пришлю описание и примеры, вы попробуете сделать разделы у себя, и если получится, пришлёте ПР с доработкой демки?

@unnamed777

This comment has been minimized.

Copy link

commented Feb 1, 2017

Не могу гарантировать, что это случится в ближайшем будущем (думаю, глядя на дату этого тикета и ссылки-комментария к связанному посту в блоге, вы это прекрасно понимаете:-); именно с этого поста я сюда и попал, когда надоело мучать основной модуль adminhelper). Было бы достаточно просто непричёсанных примеров кода без траты времени на дополнительные описания, чтобы понять задуманную логику и в правильном направлении ли я двигаюсь.

@niksamokhvalov

This comment has been minimized.

Copy link
Owner Author

commented Feb 3, 2017

Примерно так…

  1. Создаём две модели — NewsTable и CategoriesTable.
  2. Создаём NewsAdminInterface, NewsListHelper, NewsEditHelper.
  3. Создаём CategoriesAdminInterface, CategoriesListHelper (наследник \DigitalWand\AdminHelper\Helper\AdminSectionListHelper), CategoriesEditHelper (наследник \DigitalWand\AdminHelper\Helper\AdminSectionEditHelper).
  4. В NewsAdminInterface прописываем зависимость:
public function dependencies()
{
	return [CategoriesAdminInterface::class];
}
  1. В CategoriesAdminInterface прописываем зависимость:
public function dependencies()
{
	return [NewsAdminInterface::class];
}
@unnamed777

This comment has been minimized.

Copy link

commented Feb 3, 2017

Спасибо, уже сам разобрался. По ошибке указывал в helpers у элементов хелперы от раздела. Плюс кое-какие проблемы с колонками были, по ним PR сделал.

@nook-ru

This comment has been minimized.

Copy link

commented Mar 10, 2017

@niksamokhvalov,

Давайте я поищу в старых проектах, пришлю описание и примеры, вы попробуете сделать разделы у себя, и если получится, пришлёте ПР с доработкой демки?

Я готов сделать PR с примером для разделов. Весьма не очевидна работа с ними, как ни крути, получаются независимые модели. Как организовать навигацию решительно непонятно)

@unnamed777

This comment has been minimized.

Copy link

commented Mar 13, 2017

@nook-ru модели и должны быть разные - модель для сущности и модель для разделов. Вот мой пример из рабочего проекта (модели для админки, хелперы для обоих сущностей, модели сущностей (*Table)). Но чтобы это всё завести, пришлось внести исправления в модуль, они отлёживаются в PR сейчас.

ЗЫ: названия хелперов у меня отличаются от модуля, потому как использую свои классы-наследники, позволяющие не делать модуль на каждую сущность в админке, но в целом, надеюсь, это поможет понять логику.

@nook-ru

This comment has been minimized.

Copy link

commented Mar 13, 2017

@unnamed777, спасибо за пример, очень помог. Чтобы пазл сошёлся, не хватало SECTION_LINK, в phpDoc нигде не упоминающегося.

А вот статические $useSections и $sectionSuffix из хелперов, несмотря на комментарии, по факту никак не используются.

модели и должны быть разные - модель для сущности и модель для разделов

Частенько бывают кейсы с одной сущностью, которой просто нужно добавить иерархию. Тогда и «разделы» и «элементы» будут в одной модели.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.