イベントモデルで全文検索を作成しようとしています。 モデルには、国コードが格納されているcountry_codeフィールドが含まれています。 国名を直接入力して国別に検索できるようにするため、Fr.の代わりにフランスを考えてみましょう仮想属性を検索
私の範囲は次のようになります。
ActiveRecord::StatementInvalid: PG::UndefinedColumn: ERROR: column events.country does not exist.
私はどのように修正することができます:私は残念ながら私の検索範囲は、次のエラーが生成さ呼び出す国の法
def country
return '' if country_code.blank?
country = ISO3166::Country[country_code]
(country.translations[I18n.locale.to_s] || country.name) unless country.nil?
end
を持って
pg_search_scope :full_search, against: [:name, :city, :country], associated_against: {
event_type: [:name],
dance_types: [:name]
}
この?
ご返信ありがとうございます。 私のイベントモデルにはcountry_codeフィールドによる国フィールドがありません。 私はcountry_selectという宝石を使用していますので、完全な国名を保存する必要はなく、国ごとに別々のテーブルを用意する必要はありません。だから、私はcountry contry_codeフィールドしか持っていない。 countryメソッドの役割は、指定されたcountry_codeの国名を返すことです – user1445685