0

私は meta_search と meta_where gem.In 私のコントローラ ファイルを使用しています:

@search = Project.where('end <= ?', Time.zone.now) 
@search = @search.search(params[:search])

このコードを実行すると、このようなブラウザでエラーが発生します

PG::Error: ERROR:  syntax error at or near "end"
4

1 に答える 1

0

プロジェクトに「終了」列がない場合があります。これは、移行があり、それを で実行するのを忘れているかrake db:migrate、移行を行ってその列を追加する必要があることを意味する可能性があります。列名が end_date の場合、次のことができます。

rails g migration add_end_date_to_projects end_date:date

次に、移行を実行します。

編集: 'end' は PostgreSQL の予約語であるため、列の名前を変更する必要があると思います。

参照: http://www.postgresql.org/docs/8.3/static/sql-keywords-appendix.html

于 2013-01-12T02:58:08.507 に答える