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

Ruby on rails 如何为新类的参数定义静态值?,ruby-on-rails,ruby,Ruby On Rails,Ruby,我为一个叫做“课程”的东西创建了一个模型,它有:content和:user\u id。对于此应用程序的早期版本,我希望内容根据我的输入进行更改,并且用户_id始终为=1,以便它在数据库中是干净的,并且没有零值 我该怎么办 在我的课程中\u controller.rb我有: def create @lesson = Lesson.new(params[:lesson]) if @lesson.save ... do something else ... do something el

我为一个叫做“课程”的东西创建了一个模型,它有
:content
:user\u id
。对于此应用程序的早期版本,我希望内容根据我的输入进行更改,并且用户_id始终为=1,以便它在数据库中是干净的,并且没有零值

我该怎么办

在我的
课程中\u controller.rb
我有:

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

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

您可以在使用
新建
创建它之后,在
保存它之前,在行中设置
@lesson.user\u id=1

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

before_validation :on => :create do |lesson|
  lesson.user_id = 1
end

您只需在使用
new
创建
@lesson.user_id=1
行之后,在
保存之前,在该行中设置
@lesson.user\u id=1

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

before_validation :on => :create do |lesson|
  lesson.user_id = 1
end