Я использую для тегов «действия как теги».
апартаменты_контроллер
def index
if params[:tag]
@apartments = Apartment.tagged_with(params[:tag])
else
@apartments = Apartment.all
end
end
маршруты
resources :apartments do
#...
collection do
get ':tag', to: 'apartments#index', as: :tag
end
#...
Я получаю хорошие URL-адреса, например /apartments/tag1
и т. д.
Я хочу отображать пользовательский контент на основе имени тега в шаблоне апартаментов index
.
Apartment
мнение index
:
- @appartments.each do |tags|
- case tags.tag_list
- when "tag1"
%p tag1 content
- when "tag2"
%p tag2 content
- else
%p default content
Когда я перехожу по URL-адресу apartments/tag1
, отображается текст "default content"
, а не "tag1 content"
.
Что я делаю неправильно?
tags.tag_list
? Вы можете сделать%p= tags.tag_list
перед оператором case, чтобы увидеть вывод - person MrYoshiji   schedule 16.11.2012- case tags.tag_list.to_s
. - person MrYoshiji   schedule 16.11.2012