On Thursday, June 15, 2017 at 6:33:02 PM UTC-4, Walter Lee Davis wrote:
>
>
> > On Jun 15, 2017, at 6:12 PM, fugee ohu <fuge...@gmail.com <javascript:>> 
> wrote: 
> > 
> > 
> > 
> > On Thursday, June 15, 2017 at 5:11:29 PM UTC-4, Walter Lee Davis wrote: 
> > If you are doing this in a RJS template, then you will have the instance 
> variables available to you, whatever you set at the controller that is 
> rendering this. Just render the form using the @comment you created in the 
> controller. 
> > 
> > I just posted an answer to a different question you raised, where I show 
> you how to get the unique IDs on the DOM elements holding members of a 
> collection. You can use that technique with RJS or with a single JS file 
> that does not have any ERB replacement in it. 
> > 
> > Walter 
> > 
> > > On Jun 15, 2017, at 4:23 PM, fugee ohu <fuge...@gmail.com> wrote: 
> > > 
> > > This is my jquery 
> > > $('.new_comment_button').after("<%= j render('form') %>"); 
> > > I need 
> > > $('.new_comment_button') to be contructed from the values of variables 
> because i can't give every post the same id I don't think using class 
> instead of id in my view would make a  difference How can i do this? 
> > > 
> > > -- 
> > > You received this message because you are subscribed to the Google 
> Groups "Ruby on Rails: Talk" group. 
> > > To unsubscribe from this group and stop receiving emails from it, send 
> an email to rubyonrails-ta...@googlegroups.com. 
> > > To post to this group, send email to rubyonra...@googlegroups.com. 
> > > To view this discussion on the web visit 
> https://groups.google.com/d/msgid/rubyonrails-talk/941f357b-b82a-4e27-82b4-1effb5303d12%40googlegroups.com.
>  
>
> > > For more options, visit https://groups.google.com/d/optout. 
> > 
> > 
> > Can I have the link And once I get the DOM id's how do i plug them into 
> my js.erb file to change $('.new_comment_button') to let's say 
>  $('.new_comment_button2') 
> > 
>
> There are a number of different ways to solve this problem. The way I 
> imagine your app, you want to be able to comment on an item, but without 
> having a bunch of forms rendered in the page (one for each item in a 
> collection). Right so far? So the static (non-RJS) way to do this with 
> jQuery is to use the DOM and JS to send the correctly unique variable to 
> your comments controller to let it know which item you are commenting on. 
>
> # items_controller.rb 
>
>   def index 
>     @items = Item.all.page(params[:page]) 
>   end 
>
> # views/items/index.html.erb 
> <ul id="items"> 
>   <%= render @items %> 
> </ul> 
>
> # views/items/_item.html.erb 
> <%= content_tag_for item, :li do %> 
>   <%= content_tag :hi, item.headline %> 
>   <%= simple_format item.description %> 
> <%- end -%> 
>
> # assets/javascripts/item_comments.js 
> $(document).on('turbolinks:load', function(){ 
>   $('#items li').each(function(){ 
>     var elm = $(this); 
>     elm.append('<a href="/comments/new?item_id=' + 
> elm.attr('id').split('_')[1] + '">Comment</a>'); 
>   }); 
> }); 
>
> That gets you a link to a CommentsController, which in turn will need to 
> decode the (bare) attribute item_id out of its querystring, and figure out 
> which item you are commenting on. 
>
> The #content_tag_for method, which you no doubt read the documentation 
> for, will always create a unique id on the content tag it creates, using 
> the instance variable you pass to it to figure out what that should be. For 
> my contrived example, that will be 'item_123' or 'item_456' or similar. 
> Model name, singular, lower-case, followed by an underscore, followed by 
> the ID of the instance. 
>
> It's trivial in JavaScript (using jQuery or not) to read that attribute, 
> split it by the underscore character, and take the number off the end. So 
> your JavaScript stays static, uses the DOM as a data source, and you don't 
> have to write a different link for each of the items in your list. 
>
> Walter 
>
> > -- 
> > You received this message because you are subscribed to the Google 
> Groups "Ruby on Rails: Talk" group. 
> > To unsubscribe from this group and stop receiving emails from it, send 
> an email to rubyonrails-ta...@googlegroups.com <javascript:>. 
> > To post to this group, send email to rubyonra...@googlegroups.com 
> <javascript:>. 
> > To view this discussion on the web visit 
> https://groups.google.com/d/msgid/rubyonrails-talk/c5c586c2-70f7-452c-86af-b2e247482464%40googlegroups.com.
>  
>
> > For more options, visit https://groups.google.com/d/optout. 
>
>
This is confusing In your example you're using items i'm using posts but 
now I'm questioning why I'm using polymorphic association commentable in 
the first place I forget To follow your example I have to yield to the 
posts/index action and view within the users page in my case 
localhost://page/:id it's like the users wall where the posts are shown I 
dunno how to do that yet but is that what I should do, then I could match 
the posts index to items index in your example Thanks in advance and thanks 
for showing me this example 

-- 
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Talk" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to rubyonrails-talk+unsubscr...@googlegroups.com.
To post to this group, send email to rubyonrails-talk@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/rubyonrails-talk/020483ac-45e3-4cbb-999c-610a42d6c67a%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to