Как отобразить переменную для просмотра в слим?

У меня есть метод required_logger в category_contoroller, и я хочу вывести @recommended_logger в файл представления.

def recommended_logger
 @recommended_logger = User.joins(:categories).where(
   users: {user_type: 'star'},
   categories: {id: current_user.categries.first.id}
   ).first.name
end

В файле просмотра я закодировал, как показано ниже,

.recommended_loggers
  = @recommended_logger

Это ничего не показывает. Я очень новичок в Rails, может кто-нибудь помочь? Что-нибудь поможет, спасибо!


person Ryuji    schedule 18.02.2016    source источник
comment
В каком представлении у вас есть этот код?   -  person Pavan    schedule 18.02.2016
comment
Я кодировал в категориях/index.html.slim   -  person Ryuji    schedule 18.02.2016
comment
Убедитесь, что он не возвращает нулевой объект.   -  person techdreams    schedule 18.02.2016


Ответы (1)


Поскольку вы пытаетесь отобразить вывод @recommended_logger в categories/index.html.erb, вам нужно определить @recommended_logger в методе categories#index, а не в методе recommended_logger.

#categories_controller

def index
  @recommended_logger = User.joins(:categories).where(
   users: {user_type: 'star'},
   categories: {id: current_user.categries.first.id}
   ).first.name
end
person Pavan    schedule 18.02.2016
comment
@Ryuji Добро пожаловать! Отметьте ответ как принятый :) - person Pavan; 18.02.2016