Hi Stefan,

I think you are hitting the exact same problem Don found.

Fixing this is probably going to take a look of debugging time. Until
that happens, I suggest to try to use Dryml tags, and group them in
external libraries if the target is to reduce file size (take a look at
https://github.com/Hobo/hobo/issues/50).

Anyway, knowing that several people have hit the same issue, it's a good
argument for dedicating some time to it :). I'm going to reference this
conversation in the issue.

Warm regards,
Ignacio

El 19/02/14 12:17, Stefan Haslinger escribió:
> Hi folks,
> 
> in a front controller I have an index action which aims to be some sort
> of dash board.
> As context is not properly set here for the Ajax update="part"
> mechanism, I built my own simple solution:
> 
> In the view I display a partial:
> 
>     <div id="recent"><partial name="recent_conversations" /></div>
> 
> 
> ...which I update using javascript to trigger the action refresh:
> 
>     jQuery.ajax({
>       url: "sales/refresh",
>       type: "POST",
>       success: function(result){
>         jQuery("#recent").html(result);
>       },
>     });
> 
> 
> The action refresh rerenders the partial...
> 
>     def refresh
>       render partial: "recent_conversations"
>     end 
> 
> 
> which looks like this.
> 
>     <collection with="&Conversation.recent(5)"/> 
> 
> 
> That updating indeed works .... until I refresh in the browser:
> 
>     NoMethodError - undefined method
>     
> `_app_views_sales_front__recent_conversations_dryml___4446832432458842744_85050360'
>     for #<#<Class:0x0000000b7b9a98>:0x0000000b7b8440>:
>        ()
>     
> home/stefan/.rvm/gems/ruby-2.0.0-p353/bundler/gems/hobo-9ee13c6ba64e/dryml/lib/dryml/template_environment.rb:647:in
>     `method_missing'
>       actionpack (4.0.2) lib/action_view/template.rb:143:in `block in
>     render'
>       activesupport (4.0.2) lib/active_support/notifications.rb:161:in
>     `instrument'
> 
>  
> I interpret this as the cached partial is not found any more. 
> And really, restarting the server and it works again (for the first
> request.)
> 
> This also happens for 
> 
>     <%= render "recent_conversations" %>
> 
> instead of
> 
>      <partial name="recent_conversations" />
> 
> So it's not the partial tag itself, that causes this. 
> 
> There is a simple workaround here:
> I change the view from 
> 
>     <div id="recent"><partial name="recent_conversations" /></div>
> 
> to not use the partial: 
> 
>     <div id="recent"><collection with="&Conversation.recent(5)"/></div>
> 
> But I thought it's worth mentioning.
> 
> My lesson learned right now would be avoiding partials in DRYML...
> 
> Ciao,
> Stefan
> 
> -- 
> You received this message because you are subscribed to the Google
> Groups "Hobo Users" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to [email protected].
> To post to this group, send email to [email protected].
> Visit this group at http://groups.google.com/group/hobousers.
> For more options, visit https://groups.google.com/groups/opt_out.

-- 
Ignacio Huerta Arteche
http://www.ihuerta.net
Teléfono: 0034 645 70 77 35
Email realizado con software libre

-- 
You received this message because you are subscribed to the Google Groups "Hobo 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/hobousers.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to