Несколько: локальные в: частичное игнорируется - PullRequest
1 голос
/ 05 октября 2011

Я не могу понять, почему я не могу использовать дополнительный локальный в своей части.

В моем родительском представлении:

<%= render :partial => 'content', :locals => { :post => post, :summary => true } %> 

И в моем частичном:

<%= summary ? post_content(post, 220) : post_content(post) %>

В результате возникает ошибка, при которой сводная переменная не может быть найдена:

undefined method `summary?' for #<#<Class:0x007ff425e773b0>:0x007ff425e67a50>

Есть идеи?Я потенциально могу быть действительно глупым здесь ... !!

Ответы [ 4 ]

1 голос
/ 05 октября 2011

Можете ли вы подтвердить, что в вашей части вы действительно summary <space> ? вместо summary?

1 голос
/ 05 октября 2011

Я думаю, вы должны сделать тестовое выражение более явным, потому что система пытается найти метод с именем summary?Вместо того, чтобы использовать ?как троичный оператор.Попробуйте изменить его на:

<%= summary == true ? post_content(post, 220) : post_content(post) %>
0 голосов
/ 05 октября 2011

Внимательно прочитайте сообщение об ошибке ... там написано, что метод summary? не найден, а не summary.Возможно ли, что в вашем коде не было пробела между резюме и знаком вопроса?

0 голосов
/ 05 октября 2011

Убедитесь, что ваша модель имеет атрибут или метод summary.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...