2017-12-04 4 views
1

Rubyアプリケーションにsunspot Solrを統合しようとしています 私のモデルで追加データのインデックスを作成するためにdynamic_stringを使用しています。動的属性を使用するsunspotインデックス

'に `ブロック(2つのレベル)で APP /モデル/ content.rb:32'

Iは Iエラー

searchable do 
    text :name 
    integer :id 
    text :thumbnail_ref 
    integer :health_condition_id 
    dynamic_string :standard_codes, stored: true do 
     st_codes().inject({}) do |hash, e| 
     logger.info e.standard 
     logger.info e.standard_code 
     hash.merge(e.standard.to_sym => e.standard_code) 
     logger.info hash 
     end 
    end 

    end 

    def st_codes() 
    Standard.find_standards_by_health_condition(198) 
    end 

はNoMethodError(未定義の方法merge' for true:TrueClass): app/models/content.rb:35:inブロック(3つのレベル)取得していますがここで非常に高く評価され、このerror.Anyヘルプについては明らかではないと思います。

答えて

0

あなたは次の反復のために注入されたハッシュを返す必要が注入時に。 気圧あなたはlogger.infoから真のブール値を取得します。

これに変更

st_codes().inject({}) do |hash, e| 
    logger.info e.standard 
    logger.info e.standard_code 
    hash.merge!(e.standard.to_sym => e.standard_code) 
    logger.info hash 
    hash 
    end 
関連する問題