NoMethodError в CalendarPosts # index неопределенный метод 'title' для nil: NilClass ... ошибка только иногда? - PullRequest
0 голосов
/ 10 мая 2018

Rails новичок .. Я получаю сообщение об ошибке на моей странице индекса таблицы соединений ... но только иногда. Я запутался, потому что иногда это работает, а иногда нет. Также, когда я вхожу в pry и ищу то, что выдает ошибку, элемент там.

отношение к таблице присоединения: пост имеет много календарей / календари имеет много постов calendars_posts принадлежит_ к календарям calendar_posts принадлежит_ к сообщениям

контроллер calendar_posts:

  def index
@calendars = current_user.calendars

конец

index.html.erb:

   <h1>Scheduled Posts</h1>

<% current_user.calendars.each do |calendar| %>
<h2> <%= calendar.name %> </h2>

<table>
  <thead>
    <tr>
      <th>Title</th>
      <th>Date</th>
      <th>Time</th>
      <th>Content</th>
      <th>Link</th>
      <th>Picture</th>
      <th>Platforms</th>
      <th>Finalized</th>
    </tr>
  </thead>

  <tbody>
    <% calendar.calendar_posts.each do |calendar_post| %>
    <tr>
      <td><%= calendar_post.post.title.titleize %> </td>
      <td>  <%= calendar_post.date%> </td>
      <td><%= calendar_post.time %></td>
      <td>  <%= calendar_post.post.content %> </td>
      <td>  <%= calendar_post.post.link %> </td>
      <td>  <%= image_tag(calendar_post.post.picture_url, width: 200) if calendar_post.post.picture.present? %> </td>
      <td>
        <% calendar_post.post.platforms.each do |platform| %>
        <%= platform.name.titleize %> <br>
        <% end %>
      </td>
      <td>  <%= human_boolean(calendar_post.post.finalized) %> </td>
    </tr>
    <% end %>
  </tbody>
</table>
<% end %>

Я просто сбит с толку, потому что ошибка случается иногда ... Но как только она начинает происходить, это происходит каждый раз, когда я пытаюсь получить доступ к странице после? Что я могу сделать, чтобы отразить ноль?

1 Ответ

0 голосов
/ 11 мая 2018

Я понимаю, что люди голосуют за это, но я всегда делаю свое исследование перед публикацией, и я наконец выяснил проблему.Это не было похоже ни на одну из других проблем, которые обнаруживались в связанных поисках, поэтому другим было бы полезно знать ... В моих моделях у меня были Календарь и Сообщения с таблицей соединений CalendarPosts с атрибутами времени и даты, отправляемыми пользователем.Пользователь может создать сообщение, и оно всплывает отдельно от всего, потому что я хотел, чтобы кто-то мог записывать идеи как «наполнитель» и не должен был идти дальше.Эта ошибка nil: nilclass произошла из-за того, что у меня была проблема с зависимостями.Мои календарные посты зависят от сообщений.Но у меня не было уничтожения зависимости в моих моделях постов или календаря.Если пользователь удалял сообщение, сообщение в календаре все еще существовало, но сообщение не было, что и было проблемой.Добавление в разрушение зависимости исправило мою проблему.

...