ActiveRecord не устанавливает поле даты и времени - PullRequest
0 голосов
/ 15 октября 2010

У меня есть поле даты и времени, которое называется время в моей модели MotionRecord. Я пытаюсь установить его с помощью этой команды:

MotionRecord.create({:time=> "2010-10-15 15:10:24", :chart_id=>1})

Как ни странно, это приводит к следующему вводу:

<MotionRecord id: 1, time: nil, chart_id: 1>

Я не уверен, что я делаю неправильно.

Редактировать: это моя модель.

class MotionRecord < ActiveRecord::Base
  belongs_to :chart
  belongs_to :activity

  attr_accessor :time
end

и моя схема

create_table :motion_records do |t|
  t.datetime :time
  t.integer :chart_id
  t.integer :activity_id

  t.timestamps
end

Ответы [ 2 ]

1 голос
/ 15 октября 2010

Это связано с вашим другим вопросом. Используйте attr_accessible :time, а не attr_accessor. См. «ПРЕДУПРЕЖДЕНИЕ. Невозможно массово назначить защищенные атрибуты»

0 голосов
/ 15 октября 2010

Или вы можете просто установить его после создания, используя update_attribute (: field, "value")

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