Правильный нейминг таблиц и полей MySQL

Общие вопросы по использованию второй версии фреймворка. Если не знаете как что-то сделать и это про Yii 2, вам сюда.
Ответить
Аватара пользователя
pistol
Сообщения: 216
Зарегистрирован: 2014.07.12, 15:18
Откуда: Курган
Контактная информация:

Правильный нейминг таблиц и полей MySQL

Сообщение pistol »

В разных модулях и примерах по-разному называются таблицы и поля.

Мне кажется логичным называть таблицы также, как модель, с большой буквы: Product, PriceDescription. А поля также, как свойства модели: userId, userName.

Однако, все миграции, что я производил, создают такое: price_description и т.д., поля везде по-разному называются. Есть ли какой-то ПСР по этом вопросу?
Bio man
Сообщения: 609
Зарегистрирован: 2013.07.22, 10:40

Re: Правильный нейминг таблиц и полей MySQL

Сообщение Bio man »

Стандарта не встречал, но вроде-как большинство пользуется такой записью:
Таблицы - post_author
Поля - user_id
Да и Gii так устроен, что имя таблицы post_author преобразует в название модели PostAuthor.
И еще 1 рекомендация, таблицы называть в единственном числе, что бы автоматически сгенерированое имя модели было тоже в единственном числе.

Лично я предпочитаю идти по пути yii для однообразия, да и привычно так.
nepster
Сообщения: 838
Зарегистрирован: 2013.01.02, 03:35

Re: Правильный нейминг таблиц и полей MySQL

Сообщение nepster »

не знаю я считаю тупняковым называть таблицу в единственном числе. Поэтому называю примерно так:

Posts - таблица
Post - модель

Вместо id post_id, это вам потом поможет в том, что будет меньше ошибок типа: ambiguous

Поля в базе данных: user_id
Название переменных: $userId
unclead
Сообщения: 161
Зарегистрирован: 2015.03.13, 19:44

Re: Правильный нейминг таблиц и полей MySQL

Сообщение unclead »

Стандартов нет, главное выбрать свой и следовать на протяжении всего проекта.
Я встречал как и таблицы во множественном числе, так и в единственном.

вот вырезка из доки по уии1
База данных

Большинство приложений хранят данные в БД. Мы предлагаем соглашения для именования таблиц и их полей. Стоит отметить, что Yii не требует строгого следования этим правилам.

Таблицы и поля именуются в нижнем регистре.
Слова в названиях разделяются символом подчёркивания (например, product_order).
В именах таблиц используется либо единственное число, либо множественное, но не оба сразу. Мы рекомендуем использовать единственное число.
Имена таблиц могут содержать префикс. Например, tbl_. Это особенно полезно, когда таблицы нашего приложения находятся в БД, используемой одновременно другими приложениями.
Ответить