hé là, j'essaie d'implémenter une interface glisser-déposer pour un ensemble imbriqué dans mon projet de rails. Je suis nouveau sur les rails alors portez-moi. mon code est fondamentalement identique à ce projet: http://gist.github.com/128779. mon problème est en partie à cette ligne:aidez un n00b à comprendre les rails, en particulier l'héritage, acts_as_nested_set, awesome_nested_set, sortable_element_for_nested_set
<% for child in root.direct_children do %>
Je reçois NoMethodError pour direct_children
qui est une méthode d'instance de acts_as_nested_set
, je crois. À la console si j'essaye de créer une nouvelle instance de mon modèle, il est également incapable d'accéder aux méthodes d'instance acts_as_nested_set
, donc je ne pense pas que le problème est dans le partiel mais dans le modèle.
Encore une fois, désolé si ma terminologie est fausse, je suis nouveau sur les rails. Quoi qu'il en soit, qu'est-ce que je fais de mal? J'ai "acts_as_nested_set
" dans mon modèle, tout comme l'exemple gist ci-dessus, mais mon modèle ne semble pas agir comme un ensemble imbriqué. Comment puis-je réparer cela?
Merci!
Voici le code pour le modèle que je me sers (todo.rb):
class Todo < ActiveRecord::Base
acts_as_nested_set
end
Et voici la partie:
<% content_tag :li, :id => dom_id(root) do %>
<%= content_tag :span, root.text %>
<% content_tag :ul do %>
<% for child in root.direct_children do %>
<%= render :partial => "tree", :locals => {:root => child}%>
<%end %>
<%end unless root.direct_children.empty? %>
<%end%>
root
est passé à la partie de la vue comme:
<%= render :partial => "tree", :locals => {:root => @root} %>
et @root
est défini dans le contrôleur comme:Encore une fois, le code est copié pour la plupart en gros avec très peu de modifications du lien GIST ci-dessus.
À quelle racine faites-vous référence dans l'extrait de code? –
En outre, nous devons voir plus de code, tel que le modèle en question. –
Salut, merci! J'ai ajouté le code ci-dessus, s'il vous plaît laissez-moi savoir s'il y a autre chose nécessaire. –