Именование взаимосвязанных таблиц и моделей (Laravel)
Допустим, есть таблицы две пары связанных таблиц:
- posts - посты
- statuses - статусы публикаций (черновик, опубликовано и т.д.)
- users - пользователи системы (ФИО)
- statuses - статусы пользователей (админ, редактор, модератор)
Возникает несколько вопросов:
- Как правильно именовать таблицы и модели? Верен ли такой вариант: posts | post_statuses | users | user_statuses + модели: Post | PostStatus | User | UserStatus
- В случае, когда есть связующая таблица между users и user_statuses (многие-ко-многим), то как будет называться таблица и её модель? user_status и UserStatus или же user_user_status и UserUserStatus ?
Ответы (1 шт):
Автор решения: Stanislav
→ Ссылка
Уже придумали Лучшие практики для Laravel.
Немного примеров:
+-----------------+-------------+---------------------+--------------------+ | Что | Правило | Принято | Не принято | +-----------------+-------------+---------------------+--------------------+ | Контроллер | ед. ч. | ArticleController | ArticlesController | +-----------------+-------------+---------------------+--------------------+ | Маршруты | мн. ч. | articles/1 | article/1 | +-----------------+-------------+---------------------+--------------------+ | Модель | ед. ч. | User | Users | +-----------------+-------------+---------------------+--------------------+ | Отношения hasOne| ед. ч. | articleComment | articleComments, | | и belongsTo | | | article_comment | +-----------------+-------------+---------------------+--------------------+ | Таблица | мн. ч. | article_comments | article_comment | +-----------------+-------------+---------------------+--------------------+