2016-03-16 4 views
0

J'ai besoin de rendre un JSON dans Rails, mais avant de vouloir vérifier un booléen de ma classe, (par exemple, Stores) qui a "publié" booléen.Jbuilder Rails - Verifying boolean

J'ai essayé quelque chose comme ça:

json.extract! @store 

    json.store do 

     if @store.published true 
     json.array! (@store) do |store| 
      json.id store.id 
      json.published store.published 
    end 
    end 
end 
+1

pas positif ce que vous essayez de faire globalement ... mais le conditionnel devrait être 'if @ store.published == true' – toddmetheny

+0

Je vous recommande de faire toute cette logique dans le contrôleur. Une raison particulière pour laquelle vous n'avez pas? – Jerry

+0

@toddmetheny Je vais essayer, merci! – Gehlen

Répondre

1

j'avais une application similaire où je avais besoin de filtrer sur une valeur booléenne.

Voici ce que je faisais:

json.extract! block 
    if block.visible? 
     json.id block.id 
     json.name block.name 
     json.html block.html 
     json.url block_url(block, format: :json) 
    end 

Fondamentalement utilisant json.extract! J'ai ensuite filtré par mon booléen visible et sorti l'information dont j'avais besoin.

Tout cela est géré dans votre fichier JBuilder.