yatta20
(yatta20)
June 26, 2012, 12:33pm
1
Hello, I’m a newbie. I need help resolving this issue. I recently added a pdf to the newsletter admin section of the website and now I can no longer view page 2 of the list of pdf’s. Nor can I login to see the newsletters as a student. I’m using Ruby 1.9.3, Rails 3.2.1.
Here’s the information from the log file.
ActionView::Template::Error (undefined method `strftime’ for nil:NilClass):
28: <%- locals = {:enewsletter => enewsletter} %>
29: <td nowrap="nowrap" class='enewsletter_name'><%= enewsletter.subscription.title %></td>
30: <td nowrap="nowrap"><%=enewsletter.title%></td>
31: <td nowrap="nowrap"><%=enewsletter.publication_date.strftime("%m/%Y")%></td>
32: <td nowrap="nowrap"> <%=enewsletter.require_ama_disclaimer%></td>
33: <td>
34: <%#= link_to("Edit Release", edit_admin_release_path(release), edit_admin_release_path(release)) %>
app/views/admin/enewsletters/index.html.erb:31:in `_app_views_admin_enewsletters_index_html_erb__1819630787_23456257799140_0’
app/views/admin/enewsletters/index.html.erb:26:in `each’
app/views/admin/enewsletters/index.html.erb:26:in `_app_views_admin_enewsletters_index_html_erb__1819630787_23456257799140_0’
app/controllers/admin/enewsletters_controller.rb:17:in `index’
Please advise
Hi, you can see the error in this log:
ActionView::Template::Error (undefined method `strftime’ for nil:NilClass):
nil.strftime(“%m/%Y”) doesn’t exists
31: <td nowrap="nowrap"><%=enewsletter.publication_date.strftime("%m/%Y")%></td>
enewsletter.publication_date is nil
Matt’s
jsnark
(jsnark)
June 26, 2012, 12:54pm
3
The message says that enewsletter.publication_date is nil. Check the database to make sure that all instances have a valid date for this field. you should add a validation to the model to prevent creating a row with a nil value.
yatta20
(yatta20)
June 26, 2012, 1:13pm
4
I replaced line 31 with the following text: <%unless enewsletter.publication_date.nil?%><%=enewsletter.publication_date.strftime(“%m/%Y”)%>
I still get the page We’re sorry but something went wrong.
yatta20
(yatta20)
June 26, 2012, 1:21pm
5
I found another error message.
Started GET “/enewsletters” for 74.7.15.131 at Wed Jun 20 13:42:07 -0500 2012
Processing by EnewslettersController#index as HTML
Rendered enewsletters/index.html.erb within layouts/spree_application (23.5ms)
Completed 500 Internal Server Error in 45ms
ActionView::Template::Error (undefined method `strftime’ for nil:NilClass):
17: <%newsletter_url = "/enewsletter_download/#{enewsletter.id.to_s}"%>
18: <%end%>
19: <a href="<%=newsletter_url%>" class="enewsletter_link">
20: <h3><%=enewsletter.publication_date.strftime("%m/%Y")%> | <%=enewsletter.title%></h3>
21: </a>
22: </li>
23: <%if enewsletter.posttest.exists?%>
app/views/enewsletters/index.html.erb:20:in `_app_views_enewsletters_index_html_erb___1681926547_23456253999680_0’
app/views/enewsletters/index.html.erb:12:in `_app_views_enewsletters_index_html_erb___1681926547_23456253999680_0’
app/views/enewsletters/index.html.erb:9:in `_app_views_enewsletters_index_html_erb___1681926547_23456253999680_0’
app/controllers/enewsletters_controller.rb:14:in `index’