如何为新类的参数定义静态值?

时间:2012-05-07 02:02:41

标签: ruby-on-rails ruby

我创建了一个名为Lesson的模型,其中包含:content:user_id。对于这个应用程序的早期版本,我希望内容根据我的条目进行更改,并且user_id始终为= 1,以便在数据库中清除它并且没有nil值。

我该怎么做?

在我的lessons_controller.rb我有这个:

  def create
    @lesson = Lesson.new(params[:lesson])
if @lesson.save
... do something
else 
... do something else

我猜这将是定义user_id = 1的最佳位置,但我应该怎么做呢?

1 个答案:

答案 0 :(得分:3)

您可以在使用@lesson.user_id = 1创建new之后,在save之前设置before_validation :on => :create do |lesson| lesson.user_id = 1 end

另一种方法是在课程模型中设置一个钩子 -

{{1}}