Когда я использую ключевое слово references
для создания схемы, я замечаю, что в фактической базе данных соответствующий столбец не имеет списка столбца в качестве внешнего ключа.
например. допустим, мы звоним (в нашей консоли):
mix phx.gen.html Multimedia Video videos user_id:references:users \
url:string title:string description:text
Это создает таблицу в pgsql, которая выглядит следующим образом:
Обратите внимание, что user_id не имеет [FK] в имени столбца. И, глядя на свойства, здесь тоже нет внешних ключей.
У меня вопрос: нужно ли, чтобы схема ecto и база данных sql указывали одинаковые внешние ключи? В Фениксе мы используем belongs_to :user, Rumbl.Accounts.User
в схеме для видео, чтобы указать внешний ключ. Но, глядя на базу данных, вы не можете сделать вывод, что это действительно так.