在Rails中,非模型字段的错误通常是由于在表单中提交了一个字段,但是该字段没有在模型中定义。为了解决这个问题,您可以采取以下步骤:
class User< ApplicationRecord
attr_accessor :email
end
class User< ApplicationRecord
include ActiveModel::Validations
attr_accessor :email
validates :email, presence: true, format: { with: URI::MailTo::EMAIL_REGEXP }
end
def user_params
params.require(:user).permit(:name, :email)
end
<%= form_with(model: user, local: true) do |form| %>
<%= form.label :email %>
<%= form.text_field :email %>
<%= form.submit "Submit" %>
<% end %>
通过遵循这些步骤,您应该能够解决Rails中非模型字段的错误。
领取专属 10元无门槛券
手把手带您无忧上云