在我的Rails應用我有一個電影桌子,一部電影有上映時間(年/月/年)。Rails的控制器顯示只有
我也有幾年表將從特定年份 顯示所有的電影如果我創建了2013年,我想從年顯示所有的電影2013
在我多年控制在: show動作,我有這個
@movies = Movie.where(:release_date => :ynumber)
不過,這並不表明從當年的任何電影,即使有電影與上映時間2013年
我認爲它不是顯示,因爲當我打電話: release_date,它是d正在播放(日期/月/年)。我怎樣才能讓它只顯示year
?
我使用.strftime("%Y")
和.strptime("%Y")
嘗試,但這些不似乎工作
PS:我公司在生產模式中使用SQLite3的發展模式和PostgreSQL
年#顯示
def show
@year = Year.find(params[:id])
#those i've tried seperately which havent worked
@movies = Movie.where("extract(year from release_date) = ?", ynumber)
@movies = Movie.where("extract(year from release_date) = ?", :ynumber)
@movies = Movie.where("extract(year from release_date) = ?", 'ynumber')
@movies = Movie.where("extract(year from release_date) = ?", ':ynumber')
@movies = Movie.where("extract(year from release_date) = ?", params[:ynumber])
respond_to do |format|
format.html # show.html.erb
format.json { render json: @year }
end
end
的可能重複[ActiveRecord的查找年,日或月的日期字段(HTTP ://stackoverflow.com/questions/9624601/activerecord-find-by-year-day-or-month-on-a-date-field) – nemesv