在“显示”页面中有一些用于就地编辑模型的选项,即无需在“编辑”页面中加载表单。例如,请参阅http://www.ruby-toolbox.com/categories/rails_in_place_editing.html。
有没有人在Rails 3中使用任何这些选项(或其他)的经验?有什么指示或建议吗?
就我而言,我有一个由可变数量的项目组成的相当长的形式。从可用性的角度来看,在同一页面中编辑这些项目中的文本是很有意义的,而不需要为每个将用户发送到特定项目的编辑页面的编辑按钮。
答案 0 :(得分:13)
很棒的问题!
in_place_editing由dhh创建,Rails创建者。它由Rails核心团队维护。所以当然应该研究一下。
Hobo是一个大型框架,具有正面编辑前端和中心。这是一个流畅的套餐,但可能比你想要或需要的更多。
针对Rails 3进行了更新 Railscasts的Ryan推荐Best in Place宝石。请参阅Railscast,其中包含示例代码和更多信息。
答案 1 :(得分:1)
确实对我有意义。我一直这样做。
例如,我正在处理复杂的多态嵌套模型表单,它只有两个视图。索引,以及为其动态添加更多属性的部分索引。
如果您了解AJAX,那么您的用户甚至不需要点击保存按钮就可以真正帮助您实现用户界面。
完成这个的最低限度。设置一个index.html.erb,其中包含您的表单。
在您的控制器中,您可以指定您的操作:
def update
@quick_fact = @organization.quick_facts.find(params[:id])
if @quick_fact.update_attributes(params[:tab])
flash[:notice] = 'Text Tab was successfully updated.'
redirect_to quick_facts_organization_path(@organization)
else
render :action => "index", :id => params[:id]
end
end