我想在我的“Place”模型中添加新图像。向控制器添加新方法/操作并从Place show page添加新表单是一种好习惯吗?
如果没有那么最佳做法是什么?
控制器中的
def add_images
@place = Place.find(params[:id])
#DO THE CHANGES HERE
@palce.save;
redirect_to places_path
end
在路线
match 'places/:id/add_images' => 'places#add_images'
视图中的
<%= form_tag @place.id.to_s+'/add_images', :method => 'post', :multipart => true do %>
<!-- just test -->
<div class="actions">
<%= submit_tag "submit new images" %>
</div>
<% end %>
答案 0 :(得分:1)
使用新表单:form_for @place with image file_field, 在控制器中使用更新操作
def update
@place.update_attributes params[:place]
end
答案 1 :(得分:1)
如果我理解你想要以某种方式修改你的模型,这些情况的好习惯是添加一个迁移,请阅读rails guide about migration以获取更多信息。
运行迁移并更新数据库后,您可以根据需要编辑控制器/视图。