我有点问题。
我的控制器:
def new
@company = Company.new
@title = "Create company"
end
def create
@company = Company.new(params[:company])
@company.admin_id = current_user.id
if @company.save
flash[:success] = "Company created!"
redirect_to admin_path
else
@title = "New company"
render 'new'
end
end
new.html.erb
<%= debug params[:company] %>
<% form_for @company, :html => { :multipart => true } do |f| %>
<%= render 'shared/error_messages', :object => f.object %>
<%= render 'fields', :f => f %>
<div class="actions">
<%= f.submit "Submit company!" %>
</div>
<% end %>
Company.rb模型
validates :name,
:presence => true,
:length => { :maximum => 20 }
validates_attachment_presence :logo
但是在提交表格之后我反正只有一个错误:
名称不能为空
当然,我正在填写名称和徽标字段。
有什么想法吗?谢谢。
答案 0 :(得分:1)
您没有包含_fields
部分,这可能是您的问题所在
确保您的inputs
具有适当的name
属性。
尝试在控制台中实例化您的模型,看看验证是否真的有用
您可以尝试这样的事情:c = Company.new; c.valid?; c.errors
,您将在控制台中看到您的错误哈希值。