Ruby on rails 当我在Rails 4中提交内容时,一个警告错误地说有两个错误?

Ruby on rails 当我在Rails 4中提交内容时,一个警告错误地说有两个错误?,ruby-on-rails,Ruby On Rails,在提交表格(标题和应通过的内容)时,我得到以下信息: 接下来,在events.rb中,我注释了验证要求: class Event < ActiveRecord::Base has_many :comments, dependent: :destroy #validates :title, presence: true, # length: { minimum: 5 } end class事件

在提交表格(标题和应通过的内容)时,我得到以下信息:

接下来,在events.rb中,我注释了验证要求:

class Event < ActiveRecord::Base
    has_many :comments, dependent: :destroy
    #validates :title, presence: true,
    #                length: { minimum: 5 }
end
class事件
在那之后,表单会允许我提交一个事件帖子,但所有内容都是空白的,如图所示:


值得注意的是,在我提交Desive之前,我的提交一直有效,并通过添加用户模型进行了一些其他更改。请看一看,让我知道我能做些什么

如果您不希望它为空,那么您仍然需要

validates :title, presence: true

events\u controller.rb
中,需要允许所需的用户可编辑参数,并使用该参数创建事件

Event.create!(event_params)

def event_params
  params.require(:event).permit(:title, :description)
end

查看git repo中的EventsController,我发现在创建操作中,您正在创建事件实例,如下所示:

    @event = Event.new(params[:event].permit(:title, :text))
换成

    @event = Event.new(event_params)


您可以通过打开验证来检查它,它现在应该可以工作了。

嗨,Brian,谢谢您的帮助。我试过了,但没用。我假设把
@event=event.create!(事件参数)
,但结果与之前相同。我还尝试了不使用
@事件
,但得到了一个红屏错误,关于2个错误也出现了同样的情况。我以前在控制器的私有区域中有“event params”,所以没有对其进行更改。还有什么我可能遗漏的吗?嗨,科蒂,我试过了,但没用。谢谢你查看我的Git回购。不幸的是,我得到了与以前完全相同的错误,尝试了你的两个建议。你可能知道其他的可能性吗?你的意思是你输入了一个长度超过5的标题,即一个完全有效的标题,应该通过验证,然后提交表格,你会得到同样的错误,说“标题不能为空”?是的,我可以放一整本书,它一直说我做了错事。它说有2个错误,不能为空,并且“少于5个字符”。我认为这与我在gem中包含的“受保护的属性”有关。似乎解决了我的意思,我现在正在尝试解决它。我确实认为是attr_可访问性,但我得到
attr_可访问性是从Rails提取到gem中的。请为参数(强参数)使用新的推荐保护模型,或将受保护的属性添加到您的GemFile以使用旧的保护模型。(运行时错误)
。我会尝试在不使用宝石的情况下修复它。您知道在提供了信息的情况下,我如何轻松做到这一点吗?由于引入了强参数,Rails4中删除了Attr_accessible。我不知道你为什么要用那个宝石,因为我认为如果你用的是Rails4,就不需要它了。你可以参考这个问题了解细节:()嗨,我试过这个,但它仍然给我标题错误(即它说没有标题。)我可能错过了任何其他可能性?
    @event = Event.new(params.require(:event).permit(:title, :text))