Quoi de mal avec mon simple Si d'Autre?
Im nouveau à RoR/Ruby et je ne peux pas sembler obtenir la chose la plus simple à travailler. (faites-moi confiance, j'ai rechercher sur google et relire les docs, je ne sais pas quel mal)
Donc, à mon écran principal, j'ai ajouté ce qui suit:
<%= if 1>2 %>
<%= print "helllloooo" %>
<%= else %>
<%= print "nada" %>
<%= end %>
Et rien n'est sorti..
**Mise à JOUR**
Ok voilà mon nouveau code CORRIGÉ et sa ne fonctionne TOUJOURS PAS
<th>
<% if 1 > 2 %>
<%= print "helllloooo" %>
<% else %>
<%= print "nada" %>
<% end %>
</th>
- Est l'indentation de la matière ?
Vous devez vous connecter pour publier un commentaire.
Vos déclarations ne sont pas destinés à être affichés ainsi, au lieu de
écrire
Même chose pour
else
etend
MODIFIER
puts
ligne?puts
=> quelque chose d'affichage =><%=
, Mais il n'est pas utile si vous n'avez pas d'affichage dynamique de donnéesVous n'avez pas besoin d'utiliser
print
, ou même ERB pour le texte. Aussi, votreif
,else
, etend
déclarations doivent être<%
, pas<%=
:<%=
signifie déjà "impression à la réponse HTML" dans ERB (Ruby propre template language).Donc
<%= print '...'
signifie "impression le type de retour de l'imprimé '...'", qui n'est rien.Le bon code serait:
En fait, vous pouvez omettre la
<%=
parce que vous êtes juste l'impression de chaînes (et non pas des objets arbitraires):La
=
est le problème. Utilisation<%
à la place.<%=
est pour l'impression de quelque chose, tandis que<%
est pour obtenir des instructions.pour le contenu dynamique d'utilisation: <%= %>