相关疑难解决方法(0)

使用rails 3验证:presence与validates_presence_of

我有几个简单的模型,如下所示:

楷模

class Task < ActiveRecord::Base
  belongs_to :user
  validates :name, :presence => true, :message => 'Name cannot be blank, Task not saved'
end

class User < ActiveRecord::Base
  has_many :tasks
end
Run Code Online (Sandbox Code Playgroud)

VIEW就像这样调用它: user.tasks< - 然后我遍历任务

问题:

在任务模型中 -

我用的时候:

validates :name, :presence => true ,  :message => 'Name cannot be blank, Task not saved'
Run Code Online (Sandbox Code Playgroud)

我收到500错误:

ActionView::Template::Error (uninitialized constant User::Task):
NameError in View file
Run Code Online (Sandbox Code Playgroud)

我用的时候:

validates_presence_of :name
Run Code Online (Sandbox Code Playgroud)

一切正常.

我认为上面两个验证方法都是相同的......问题与关联有关,以及验证如何与相关模型联系起来.我预感到事情的相关方式正在发生,但这只是一种预感.

任何帮助将不胜感激.非常感谢.

ruby-on-rails-3

23
推荐指数
1
解决办法
3万
查看次数

标签 统计

ruby-on-rails-3 ×1