【发布时间】:2011-07-10 06:36:42
【问题描述】:
你会推荐什么作为重构这两个视图代码的最佳方法?
<%if Supplydetail.find_all_by_isbn_id(@isbn).first.nil? %>
<%else%>
<%if Productavailability.find_by_code(Supplydetail.find_all_by_isbn_id(@isbn).first.productsupply_supplydetail_productavailability).nil? %>
<%else%>
<li><%= Productavailability.find_by_code(Supplydetail.find_all_by_isbn_id(@isbn).first.productsupply_supplydetail_productavailability).value %></li>
<%end%>
<%end%>
和(使用格式)
%li.tip
= tooltip(:test, :hover)
= f.input :relatedmaterial_relatedproduct_idvalue, :label => "Related ISBN", :as => :select, :collection => Isbn.all, :label_method => :descriptivedetail_titledetail_titleelement_titlewithoutprefix, :value_method => :productidentifier_idvalue
%li.list
= link_to "Edit list", isbns_path
我在我的应用程序中有无数次的这些示例,并且想知道在我投入到这项相当庞大的工作之前,我正在以最好的方式进行重构。
【问题讨论】:
-
代码的第一部分。请立即将其从视图中剪切并粘贴到控制器
标签: ruby-on-rails ruby-on-rails-3 refactoring find conditional