Реляционные базы данных и внешние ключи - PullRequest
0 голосов
/ 07 февраля 2019

У меня просто пара вопросов о ссылках, внешних ключах и ассоциациях в рельсах.Я прочитал документацию, но все еще немного сбит с толку.

  1. Когда вы набираете t.references :tweets, например, при переносе, почему это тогда превращается в bigint в схеме?
  2. foreign key :true часть кода, которая связывает две таблицы?
  3. В дополнение к вопросу 2, какую роль играют belongs to и has many в моделях, которые отличаются от foreign key true, как я думалчто схема сможет сказать, какие таблицы has many и belongs to в зависимости от того, какой идентификатор находится в другой таблице.

1 Ответ

0 голосов
/ 07 февраля 2019

Rails по умолчанию переключен на BIGINT в версии 5.0, потому что 32-битные значения без знака могут переполниться и заставить вашу базу данных только для чтения .

Часть foreign_key: true имеетЭффект обеспечения целостности данных между двумя таблицами.Вы не можете вставить значения, которые не существуют.

belongs_to и has_many устанавливают разные концы одного и того же отношения.Они не обязательно могут быть интуитивно понятны из самой схемы, и часто бывает так, что эти отношения необходимо настроить с помощью параметров.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...