私はこれがすでに一種のハックであるという予感がありますが、それでも私はこれについて興味がありました:
私がこれを持っていると言う:
current_user.memories.where("content LIKE '%#{search}%' OR note LIKE '%#{search}%' OR date LIKE '%#{search}%'")
これは検索フィールド用です。
私のデータベースの「memories」テーブルには、content:textとnote:stringがあるので、最初の2つの比較まで、このトリックはうまく機能します。
ただし、明らかに日付部分は機能しません。メモリテーブルにもdate:date列がありますが、文字列との一致を確認する方法がわかりません。
文字列を2013-01-15のような形式にフォーマットしても問題ありませんが、この比較を行う方法がわかりません。どういうわけか、「日付」の部分もその文字列に変更しますか?
この全体の背後にある考え方は、2013-01-15(または何らかの形式)のような検索を許可することです。これにより、「メモリ」オブジェクトの日付も自動的にチェックされます。
アドバイスをいただければ幸いです。
(それが重要な場合、dbはpostgresです。)