J'utilise acts-as-taggable-on pour le marquage.les conditions ne fonctionnent pas correctement
apartments_controller
def index
if params[:tag]
@apartments = Apartment.tagged_with(params[:tag])
else
@apartments = Apartment.all
end
end
routes
resources :apartments do
#...
collection do
get ':tag', to: 'apartments#index', as: :tag
end
#...
je reçois urls Nice par exemple /apartments/tag1
etc.
Je veux montrer un contenu personnalisé en fonction du nom de la balise dans les appartements index
modèle.
Apartment
vue « index
:
- @appartments.each do |tags|
- case tags.tag_list
- when "tag1"
%p tag1 content
- when "tag2"
%p tag2 content
- else
%p default content
Quand je vais à url apartments/tag1
le texte est "default content"
spectacle et non "tag1 content"
.
Qu'est-ce que je fais mal?
ce qui est la sortie de 'tags.tag_list'? Vous pouvez faire '% p = tags.tag_list' avant votre déclaration de cas pour voir la sortie – MrYoshiji
quand je vais dans un appartement avec un tag1 dans la console. a = Apartment.find (28) a.tag_list je reçois "tag1" comme sortie – Remco
Essayez un to_s sur la tag_list: '- case tags.tag_list.to_s'. – MrYoshiji