2010-12-18 20 views
1

Da meine Site einen Admin-Abschnitt und einen normalen (Frontend-Benutzer) Abschnitt hatte, musste ich den Artikel-Controller so strukturieren, dass er RESTful war.Verwenden verschachtelter Controller

Also was ich getan habe, war 2 Artikel Controller, 1 verschachtelte unter dem Admin-Namespace (was in Admin/Artikel führen würde) und der andere als normale Artikel Ressource (/ Artikel). (Ich folgte diesem blog.)

Nun begann ich Fragen wie

A copy of AuditObserver has been removed from the module tree but is still active! 

2 Fragen gegenüber.

  1. Ist dieser Fehler wirklich wegen mir mit einer solchen Struktur von verschachtelten Ressourcen?
  2. Ist es eine gute Programmierpraxis, eine solche Struktur zu verwenden? Wenn nicht, gibt es eine bessere Alternative?

Vielen Dank!

Antwort

2

Die Struktur ist vollkommen in Ordnung, und Ihr Code wird wahrscheinlich im Produktionsmodus gut funktionieren. Das Problem tritt normalerweise in der Entwicklung auf, wenn Module oder Klassen nach einer ersten Anforderung nicht 'entladen' werden. Ohne den Code zu sehen, ist es schwer zu sagen, welches Modul oder welches Plugin dieses Problem verursacht. Vielleicht möchten Sie sich aber auch einen Blick auf this blog post werfen.

Sie können in der Regel dieses Problem lösen, indem sie die beanstandete Modul oder Klasse Laden nur einmal:

config.autoload_once_paths << '/path/to/class/or/module.rb' 

oder durch Plugins im Entwicklungsmodus Nachladen:

config.reload_plugins = true if Rails.env == 'development' 
Verwandte Themen