0

家の模型

class House < ActiveRecord::Base
   has_many :categories, :through => :category_join_table

def features_to_html_class  
  "#{price} #{rooms} #{guests} #{{categories.name do |cat| cat.name}}"
end
end

ハウス インデックス テンプレート

- @houses.each do |house|
  .item{:class => house.features_to_html_class }

値 price、rooms、guests はビューで正しく解析されますが (フィルタリング目的)、カテゴリでは解析されません。私は何を間違っていますか?

4

3 に答える 3

2

スペースがある場合、同じカテゴリ名に対して複数のクラスを持ちたくありません。

Top Articles
Articles

生産します:

class="Top Articles Articles"

さらに一歩進んで、スペースをダッシュ​​に置き換え、すべてを小文字にすることができます。

"#{ categories.map{ |cat| cat.name.parameterize }"

class="top-articles articles"

編集:

Anthony がコメントで指摘したように、Rails を使用している場合は、parameterizeを使用できます。

于 2012-11-11T21:16:00.807 に答える
2

これを試して:

categories.map{|cat|cat.name|}.join(' ')
于 2012-11-11T21:20:31.950 に答える
0

各名前カテゴリを反復する必要があるため、次を使用する必要があります。

{categories.name.each { |cat| cat.name}}
于 2012-11-11T21:27:04.457 に答える