Forum: Ruby on Rails modalbox rails var interpolation

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
8133ee52ca72188132b5c7d97dfb967f?d=identicon&s=25 Chris Habgood (chabgood)
on 2009-05-05 06:41
(Received via mailing list)
Howdy everyone.

I am using modalbox which is very nice an easy to use.  I have this
for an edit for a company listing:

<td><%= link_to('Manage Companies', {}, :onclick => 'Modalbox.show(\'/
companies/edit/#{company.id}\', {width: 600}); return false;') %></td>

The link is not putting the company.id in it puts #{ company.id}.  how
do I get this to interpolate the rails variable properly?
Dd2d775dea75b381edb1bbf0600a0907?d=identicon&s=25 Marnen Laibow-Koser (marnen)
on 2009-05-05 06:45
Chris Habgood wrote:
[...]
>
> <td><%= link_to('Manage Companies', {}, :onclick => 'Modalbox.show(\'/
> companies/edit/#{company.id}\', {width: 600}); return false;') %></td>
>
> The link is not putting the company.id in it puts #{ company.id}.  how
> do I get this to interpolate the rails variable properly?

Review your basic Ruby syntax. :). Variable interpolation only happens
in double-quoted strings.

Best,
--
Marnen Laibow-Koser
http://www.marnen.org
marnen@marnen.org
3131fcea0a711e5ad89c8d49cc9253b4?d=identicon&s=25 Julian Leviston (Guest)
on 2009-05-05 11:36
(Received via mailing list)
This is because single quoted strings are not interpolated. You need
to use doubles or any of the other string quoting methods.

Blog: http://random8.zenunit.com/
Learn: http://sensei.zenunit.com/
Twitter: http://twitter.com/random8r
8133ee52ca72188132b5c7d97dfb967f?d=identicon&s=25 Chris Habgood (chabgood)
on 2009-05-05 17:56
(Received via mailing list)
Ok, why does this work?

<%= button_to_function "Add Site", remote_function( :url =>
{ :controller => 'addsites', :action => "addsitetomop", :id=>
@mop},  :with => "'site[comp_#{company.id}]=' + $('site_comp_#
{company.id}').value + '&site[customer_#{company.id}]=' + $
('site_customer_#{company.id}').value ")%>
Dd2d775dea75b381edb1bbf0600a0907?d=identicon&s=25 Marnen Laibow-Koser (marnen)
on 2009-05-05 18:05
Chris Habgood wrote:
> Ok, why does this work?
>
> <%= button_to_function "Add Site", remote_function( :url =>
> { :controller => 'addsites', :action => "addsitetomop", :id=>
> @mop},  :with => "'site[comp_#{company.id}]=' + $('site_comp_#
> {company.id}').value + '&site[customer_#{company.id}]=' + $
> ('site_customer_#{company.id}').value ")%>

For the exact reason that I posted.  Read my first post again and spot
the differences!

Really, if you can't answer that question yourself after reading this
thread, you need to sharpen your powers of observation before you have
any business programming in *any* language.

Best,
--
Marnen Laibow-Koser
http://www.marnen.org
marnen@marnen.org
This topic is locked and can not be replied to.