【发布时间】:2016-08-27 08:32:58
【问题描述】:
在我看来 new.html.erb 中,我在 rails 中有这个表单
<%= form_for( @rent , html: { class: 'form-horizontal' }) do |f| %>
<div class="form-group">
<label for="" class="col-lg-2 col-md-3 col-sm-3 col-xs-3 control-label">year:</label>
<div class="col-lg-3 col-md-3 col-sm-3 col-xs-3">
<%= f.text_field :year, class: 'form-control' %>
</div>
<div class="col-lg-2 col-md-3 col-sm-3 col-xs-3">
<%= f.submit 'Buscar', :class =>"btn btn-sm btn-info btn-flat" %>
</div>
<div class="clearfix"></div>
</div>
<% end %>
<%= render 'shared/error_messages', object: @rent %>
在我的控制器中我有这个
class RentsController < ApplicationController
def new
@rent = RentSearch.new
end
private
def search_params
params.require(:year).permit(:year)
end
end
在我的模型中,有这样的代码:
class RentSearch
include ActiveModel::Validations
include ActiveModel::Conversion
extend ActiveModel::Naming
attr_accessor :year
validates :year, presence: true
validates :year, length: { is: 4 }
end
使用这段代码我得到了这个错误
未定义的方法`持久化? #
但是我做了一些修改并没有显示错误,但是提交时没有显示任何错误并且表单为空,我不知道如何解决这个问题。
在没有模型访问数据库并将所有验证传递给控制器并验证的情况下,在 Rails 中创建表单的最佳方法是什么。
【问题讨论】:
-
对不起,我是新人,但您的请求已完成
标签: ruby-on-rails forms ruby-on-rails-4