【问题标题】:Validation not displaying error messages Ruby on Rails验证不显示错误消息 Ruby on Rails
【发布时间】:2022-01-26 20:21:49
【问题描述】:

我是 Ruby Rails 的新手,并尝试按照教科书进行操作,但我的验证代码不起作用。原始项目是使用脚手架命令创建的:

rails generate scaffold Micropost content:text user_id:integer

然后说明告诉我将以下代码添加到我的 Micropost 模型中:

validates :content, length: { maximum: 140 }, presence: true

验证的工作原理是如果长度超过 140 则不提交表单,但问题是没有错误消息或任何内容。按钮什么也不做。根据教科书,应该有一个红色的错误消息。

有什么想法吗?

【问题讨论】:

  • 请检查您是否有以下内容: 1. 您在控制器中的记录上验证“有效?”、“验证”; 2. 页面上有错误块,通过 Flash 或其他方式呈现错误(又名 micropost.errors.full_messages)。
  • 我在我开始的另一个项目中遇到了同样的问题。我的创建方法有这个:'@email_contact = EmailContact.new(email_contact_params) if '@email_contact.valid? '@email_contact.deliver flash[:success] = '消息已发送!' redirect_to contact_path else flash[:error] = '错误。无法发送消息。 render :new end 然后 :new 方法应该刷新页面,我通过 但它不会工作
  • 撇号是因为 StackOverflow 不允许我输入 '@';这实际上不在我的代码中。

标签: ruby-on-rails ruby


【解决方案1】:

您的表单似乎没有显示验证错误。 看看这个答案https://stackoverflow.com/a/7880392/4077816

【讨论】:

    猜你喜欢
    • 2016-11-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-07-07
    • 1970-01-01
    • 1970-01-01
    • 2016-09-21
    相关资源
    最近更新 更多