我有两个模型,相册和图像。这些具有has_and_belongs_to彼此的关联。专辑有很多图像,图像可以属于许多专辑。那么指定HABTM是否正确?
创建相册后,它会重定向到相册显示路径。在此页面上,我想允许用户将图像添加(上传)到相册。但是,我不确定如何为此指定表单。我使用simpleform。我试过这样的事情(haml):
= simple_form_for [:admin, @album] do |a|
= a.simple_fields_for :images do |i|
= i.input :title
= i.file_field :image
= i.submit
但是这只会更新相册并且不会创建图像。我也有一个错误说"图像预期,得到数组"。
我想允许我的用户直接在相册显示页面上传图片。在指定相册的单独图像上传页面感觉不对。在我看来,用户体验有很大的不同。
或..我想我可以有一个链接说'添加图片'单击时,渲染部分,在模态中说image/_upload_form
?那是一个备用计划。在专辑节目页面上寻找图像表单的解决方案。感谢。
答案 0 :(得分:2)
您应该submit
form
,而不是fields
。
此代码
= simple_form_for [:admin, @album] do |a|
= a.simple_fields_for :images do |i|
= i.input :title
= i.file_field :image
= i.submit
应该是
= simple_form_for [:admin, @album] do |a|
= a.simple_fields_for :images do |i|
= i.input :title
= i.file_field :image
= a.submit #Here