I want to pass an array to a template as a local variable. The template passes the same local variable to a partial as a local variable. This isn''t working as I expect and something in the back of my mind is says that I read something about this. Nothing shows up in the first three pages of my Google search and it''s degenerating into Japanese train (rail) passes. Help, Jeffrey --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---
On Sat, Dec 13, 2008 at 10:40 PM, Jeffrey L. Taylor <ror-f/t7CGFWhwGcvWdFBKKxig@public.gmane.org> wrote:> > I want to pass an array to a template as a local variable. The template > passes the same local variable to a partial as a local variable. This isn''t > working as I expect and something in the back of my mind is says that I read > something about this. Nothing shows up in the first three pages of my Google > search and it''s degenerating into Japanese train (rail) passes.Sample of the code that does not work as expected would help us help you. Documentation on templates: http://api.rubyonrails.org/classes/ActionView/Base.html Documentation on partials: http://api.rubyonrails.com/classes/ActionView/Partials.html Both documents show how to pass variables in. -Michael -- Michael C. Libby www.mikelibby.com --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---
Quoting Michael Libby <michael.c.libby-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>:> > On Sat, Dec 13, 2008 at 10:40 PM, Jeffrey L. Taylor > <ror-f/t7CGFWhwGcvWdFBKKxig@public.gmane.org> wrote: > > > > I want to pass an array to a template as a local variable. The template > > passes the same local variable to a partial as a local variable. This isn''t > > working as I expect and something in the back of my mind is says that I read > > something about this. Nothing shows up in the first three pages of my Google > > search and it''s degenerating into Japanese train (rail) passes. > > Sample of the code that does not work as expected would help us help you. > > Documentation on templates: > http://api.rubyonrails.org/classes/ActionView/Base.html > Documentation on partials: > http://api.rubyonrails.com/classes/ActionView/Partials.html > > Both documents show how to pass variables in. >But neither show passing locals to actions, e.g. render :action => ''new'', :locals => {:universe => ''abc''} I have looked at a bunch of examples and none do this. In fact, I think the first URL lists obsolete APIs. Where it reads: render "shared/header", { :headline => "Welcome", :person => person } I believe the correct API for recent versions of Rails (I''m using 2.1.2) is: render "shared/header", :locals=>{:headline => "Welcome", :person => person} From my experiments, it appears passing locals to actions in unsupported. I''ve changed to passing the needed information thru an instance variable to the action template and a local variable to the partial. Thanks, Jeffrey --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---
Jeffrey L. Taylor wrote:> Quoting Michael Libby <michael.c.libby-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>: >> Sample of the code that does not work as expected would help us help you. >> >> Documentation on templates: >> http://api.rubyonrails.org/classes/ActionView/Base.html >> Documentation on partials: >> http://api.rubyonrails.com/classes/ActionView/Partials.html >> >> Both documents show how to pass variables in. >> > > But neither show passing locals to actions, e.g. > > render :action => ''new'', :locals => {:universe => ''abc''} > > I have looked at a bunch of examples and none do this. > > In fact, I think the first URL lists obsolete APIs. Where it reads: > > render "shared/header", { :headline => "Welcome", :person => person } > > I believe the correct API for recent versions of Rails (I''m using 2.1.2) > is: > > render "shared/header", :locals=>{:headline => "Welcome", :person => > person} > > From my experiments, it appears passing locals to actions in > unsupported. > I''ve changed to passing the needed information thru an instance variable > to > the action template and a local variable to the partial. > > Thanks, > JeffreyNo, I don''t think you can pass locals to render :action. Try render :partial => ''shared/header'', :locals => {...} Note that the partial filename must be /views/shared/_header.html.erb -- Posted via http://www.ruby-forum.com/. --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---
You can pass the variable to the action with an instance variable, and
from there you can pass the instance variable to the partial, I would
think.
def whatever
@locals => { :universe => ''abc'' }
render :action => ''new''
end
Hope that helps.
-- Josh
http://iammrjoshua.com
Jeremy Weiskotten wrote:> Jeffrey L. Taylor wrote:
>> Quoting Michael Libby
<michael.c.libby-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>:
>>> Sample of the code that does not work as expected would help us
help you.
>>>
>>> Documentation on templates:
>>> http://api.rubyonrails.org/classes/ActionView/Base.html
>>> Documentation on partials:
>>> http://api.rubyonrails.com/classes/ActionView/Partials.html
>>>
>>> Both documents show how to pass variables in.
>>>
>>
>> But neither show passing locals to actions, e.g.
>>
>> render :action => ''new'', :locals => {:universe
=> ''abc''}
>>
>> I have looked at a bunch of examples and none do this.
>>
>> In fact, I think the first URL lists obsolete APIs. Where it reads:
>>
>> render "shared/header", { :headline =>
"Welcome", :person => person }
>>
>> I believe the correct API for recent versions of Rails (I''m
using 2.1.2)
>> is:
>>
>> render "shared/header", :locals=>{:headline =>
"Welcome", :person =>
>> person}
>>
>> From my experiments, it appears passing locals to actions in
>> unsupported.
>> I''ve changed to passing the needed information thru an
instance variable
>> to
>> the action template and a local variable to the partial.
>>
>> Thanks,
>> Jeffrey
>
> No, I don''t think you can pass locals to render :action.
>
> Try render :partial => ''shared/header'', :locals =>
{...}
>
> Note that the partial filename must be /views/shared/_header.html.erb
--
Posted via http://www.ruby-forum.com/.
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"Ruby on Rails: Talk" group.
To post to this group, send email to
rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org
To unsubscribe from this group, send email to
rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org
For more options, visit this group at
http://groups.google.com/group/rubyonrails-talk?hl=en
-~----------~----~----~----~------~----~------~--~---