Я заметил, что мое приложение автоматически устанавливало все мои процессы как завершенные, как только они были созданы. Я просмотрел это, не мог найти, почему дата обновлялась без уведомления, но я обнаружил, что один из моих просмотров искал поле, которое не существовало. Я создал поле 'complete', установил его как ненулевое логическое значение и повторил попытку.
Я снова устанавливал значение true в автоматическое, поэтому я попытался явно установить значение false в методе создания, но это все равно не сработало: S, поэтому я попытался вставить скрытое поле в форму. Теперь я получаю сообщение об ошибке «столбец не может быть пустым», даже если указывается значение.
Как видите, для полного значения явно есть параметр. Чего мне не хватает?
Ошибка:
Mysql::Error: Column 'complete' cannot be null: INSERT INTO `decommissions` (`completed_at`, `keep_backups`, `services_stopped`, `updated_at`, `operating_system_id`, `comments`, `username`, `disposition`, `stakeholder_email`, `complete`, `alias`, `storage`, `model_id`, `contract_maintenance`, `created_at`) VALUES(NULL, 1, 1, '2010-10-18 00:32:37', 1, NULL, NULL, '', 'test@qut.edu.au', NULL, 'test1', '', 1, '', '2010-10-18 00:32:37')
Параметры:
{"decommission"=>{"dns_items_attributes"=>{"0"=>{"ip"=>"131.181.185.111",
"alias"=>"test",
"retain"=>"1",
"_destroy"=>""}},
"keep_backups"=>"1",
"services_stopped"=>"1",
"operating_system_id"=>"1",
"stakeholder_email"=>"test@qut.edu.au",
"alias"=>"test1",
"model_id"=>"1"},
"commit"=>"Submit",
"authenticity_token"=>"cMMf0zS/5jPExlXqVPaYVXndqPeVkm+OQ/WEPIYd2+g=",
"disposition"=>"Dispose",
"complete"=>"false",
"storage"=>"Local",
"contract_maintenance"=>"0"}
Когда я помещаю следующее в свой контроллер создания, оно отображает 'true':
@decommission = Decommission.new(params[:decommission])
@decommission.complete = false
render :text => @decommission.complete