2

私の見解では、次のようなものがあるとしましょう:

<%= f.text_field :name_first %>

そして別の時間:

<%= f.text_field :name_last %>

フィールド名をハードコーディングする代わりに、ビュー ヘルパー メソッドを使用して動的に生成したいと考えています。

def category_name
    @contact_info.category.name
end

def return_field_name
  category_lower = category_name.downcase
  ":name"+category_lower  
end

したがって、私のビューは次のようになります。

 <%= f.text_field return_field_name %>
4

1 に答える 1

3

書く:

def return_field_name
  category_lower = category_name.downcase
  "name#{category_lower}".to_sym
  # but I'm sure that without #to_sym it should work as well
end

しかし、それが役に立つのであれば、純粋なメソッドだけを書くべきです。私見それは非常に良い習慣です。

于 2012-06-17T00:36:20.710 に答える