#mysql #ruby-on-rails
#mysql #ruby-on-rails
Вопрос:
У меня есть столбец с именем ‘parent_id’, к которому я пытаюсь добавить значение по умолчанию -1:
change_column :categories, :parent_id, :default => -1
Тип является целым числом в mysql.
Я получаю сообщение об ошибке:
'mysql2 error......'default-1 default null' at line 1:
alter table 'categories' change 'parent_id' 'parent_id' default-1 default null
Кажется, в нем отсутствует знак =?
Кроме того, как мне выполнить db: migrate в тестовой базе данных?
Ответ №1:
У вас отсутствует тип столбца в вашем change_column
, он должен быть больше похож на этот:
change_column :categories, :parent_id, :integer, :default => -1
Результат такой: default-1
. change_column
Методу требуются три аргумента, а затем хэш необязательных аргументов. Ваш :default => -1
тип столбца смешивается, потому что вы не указали :integer
в качестве третьего аргумента.