[英]undefined method `strftime' for nil:NilClass - shows sometimes
I'm building a simple app for displaying movies using themoviedb gem. 我正在构建一个使用themoviedb gem显示电影的简单应用。 However, when I try to do a search query, it displays the error I mentioned. 但是,当我尝试执行搜索查询时,它会显示我提到的错误。 Now, that doesn't happen every time - only in certain cases (eg Matrix works fine, but Fight Club shows the error) 现在,这并非每次都发生-仅在某些情况下(例如Matrix可以正常工作,但Fight Club会显示错误)
Here's my code: 这是我的代码:
<% @movie.each do |movie| %>
<%= link_to movie_path(movie.id) do %>
<%= image_tag("#{@configuration.base_url}w154#{movie.poster_path}") if movie.poster_path %>
<% end %>
<div class="moviesindex">
<%= link_to movie.title, movie_path(movie.id) %>
(<%= movie.release_date.to_date.strftime("%Y") %>) <br />
</div>
<% end %>
Be forgiving for realease_date
if movie.release_date
can be nil at times using try
: 要宽容的realease_date
如果movie.release_date
可以是零,在使用时间try
:
<%= movie.release_date.try(:year) %>
This will give you release year if release_date is valid and gives you nil if release_date is nil. 如果release_date有效,则为您提供发布年份;如果release_date为nil,则为您发布nil。
Since release_date
, I assume is already either a Date
or DateTime
or ActiveSupport::TimeWithZone
, the to_date
is not necessary. 自release_date
以来,我假设已经是Date
或DateTime
或ActiveSupport::TimeWithZone
,因此to_date
是不必要的。 Also I think date.year
is more cleaner than date.strftime("%Y")
. 我也认为date.year
比date.strftime("%Y")
更干净。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.