2012-03-21 100 views
0

我想添加新的图像到我的“地方”模型。将新方法/动作添加到控制器并从Place展示页面添加新表单是否是一种好的做法?轨道更新记录

如果没有,那么最佳实践是什么?

在控制器

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

我用我的解决方案更新了问题我不知道它是否正确? – aaalsubaie 2012-03-21 15:16:33

回答

1

使用新形式:用的form_for图像是,file_field,在 使用更新动作@place控制器

def update 
    @place.update_attributes params[:place] 
end 
+1

考虑使用回形针宝石 https://github.com/thoughtbot/paperclip – gayavat 2012-03-21 14:38:42

+0

这将更新已插入的图像。如果我想向模型添加新图像,该怎么办? – aaalsubaie 2012-03-21 14:52:04

+0

你能帮我回答我上面提到的问题吗? – aaalsubaie 2012-03-22 15:11:05

1

如果我理解得很好,您希望以某种方式修改您的模型,这些情况的最佳做法是添加迁移,请阅读rails guide about migration以获取更多信息。

运行迁移并更新数据库后,您可以根据需要编辑控制器/视图。