Hi All First post to the list, I have a question about extensions and adding RJS features to a Radiant site. What I would like to be able to do is call an RJS action on a click of certain buttons of a page, which would then log into a database that the action is clicked and use RJS to dynamically update the page to replace the div with the botton with a new piece of content, like a contact form. I would be using RJS to provide the nice ajax type effects for smoothly updating the page and replacing certain parts with new elements. Is this something that would be done through extensions? Is it possible to use RJS with Radiant and add a little AJAX love to it? thanks! Michael Andrew SEOG.net
on 2007-05-11 21:48
on 2007-05-11 22:10
Heh, I get to use this same example twice in 5 minutes. :) http://pastie.caboo.se/60860 -- Building an e-commerce site with Rails? http://agilewebdevelopment.com/rails-ecommerce Meet up at RailsConf: http://railsconf2007.conferencemeetup.com/
on 2007-05-12 00:22
I'm a rails newb so excuse this if it seems silly to all the experienced
folks out there.
But in the example that you posted with the SamplePage class -- I am
assuming I would make my own class as a subclass of page and then follow
the
instructions for loading it as an extension from the Radiant docs.
Then calling it in the theme with something like this:
<% form_remote_tag :url => { :action => :SamplePage, :id => form_button
} do
%>
<%= submit_tag "Email Me" %>
<% end %>
But replacing the action with whatever Class I made, like FormDisplay
let's
say.
And then change the appropriate Element.update calls to whatever RJS
actions
I want to take on the element within the Body of the document, which
would
be the HTML I have loaded into that page's body section through
Radiant's
backend administration.
Am I close? :)
thanks!
Michael
on 2007-05-12 00:39
DeconStudio wrote: > But in the example that you posted with the SamplePage class -- I am > assuming I would make my own class as a subclass of page and then follow the > instructions for loading it as an extension from the Radiant docs. Creating that class and the extension is a step in the right direction. After that you can create pages that have the type of your new class. > Then calling it in the theme with something like this: > > <% form_remote_tag :url => { :action => :SamplePage, :id => form_button } do > %> > <%= submit_tag "Email Me" %> > <% end %> Pages don't support ActionView helpers. You will have to convert everything to "real" HTML/Javascript. > But replacing the action with whatever Class I made, like FormDisplay let's > say. No a URL to a page with the type of your new page class. > And then change the appropriate Element.update calls to whatever RJS actions > I want to take on the element within the Body of the document, which would > be the HTML I have loaded into that page's body section through Radiant's > backend administration. Hmm, I don't think you can use ActionController functions such as render in a Page's process method. So no RJS, again pure Javascript only, as in the example. > Am I close? :) Just a little. You are probably better off writing a separate controller that handles your requests instead of creating a derived page class. Cheers, Oliver
Please log in before posting. Registration is free and takes only a minute.
Existing account
(Switch to SSL-encrypted connection)
NEW: Do you have a Google/GoogleMail or Yahoo account? No registration required!
Log in with Google account | Log in with Yahoo account
Log in with Google account | Log in with Yahoo account
No account? Register here.