Hi all
what is the difference between <%= and <% in a view file?
thanks
Hi all
what is the difference between <%= and <% in a view file?
thanks
<%= prints the contents of the tag, whereas <% does not
And you couldnt just try that out yourself?
On Aug 18, 2011, at 6:05 PM, 7stud – wrote:
rails
The <% tags just execute the ruby code and don’t enter any text onto
the
page, which causes ruby/.erb to loop over thetag 3 times. The
<%= tag inside the loop prints the value of the variable i. So you
get:loop: 0loop: 1loop: 2Here’s another way to look at this. ‘<%=’ is a shortcut for ‘<% puts’.
There’s a similar construction in PHP: ‘<?=’ is a shortcut for ‘<?php
echo (or print)’.Walter
Thank you all for your answers!
Tim S. wrote in post #1017353:
<%= prints the contents of the tag,
Well, it never meant that. <%= tells ruby to print the result of the
expression between the tags. For instance,
<%= 2+2 %>
would not print ‘2+2’, it would print ‘4’. But even the “result of
the expression” isn’t an entirely accurate description–because in rails
3 you write:
<%= form_for(@user) do |f| %>
which doesn’t fit that description. In ruby, ‘form_for(@user) do |f|’
isn’t an expression–it’s the first half of a loop/block, so it’s an
incomplete expression. In other words, in ruby if you wrote:
result = some_func(arg) do |x|
you would get an error. Maybe its best to think of <%= form_for() as an
exception to the rule?
One example of how <%= and <% differ is this:
<% 3.times do |i| %>
The <% tags just execute the ruby code and don’t enter any text onto the
page, which causes ruby/.erb to loop over the
Walter D. wrote in post #1017505:
Here’s another way to look at this. ‘<%=’ is a shortcut for ‘<% puts’.
There’s a similar construction in PHP: ‘<?=’ is a shortcut for ‘<?php
echo (or print)’.Walter
I do not believe you can use ‘<% puts’ in ERB, i thought you are
supposed to use ‘<% concat’
Alexey.
On Aug 21, 2011, at 3:34 AM, Alexey M. wrote:
supposed to use ‘<% concat’
Thanks! I never tried this, actually.
Walter
This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.
Sponsor our Newsletter | Privacy Policy | Terms of Service | Remote Ruby Jobs