Sono nuovo di rotaie e non riesco a capire questo problema ...Ruby on Rails modello all'interno dello spazio dei nomi non può essere trovato nel controllo
Ho un regolatore di
Admin::Blog::EntriesController
definito in app/controllers/admin/blog/entries_controller.rb
E ho un modello chiamato
Blog::Entry
defin Ed in app/modello/blog/entry.rb
Quando provo ad accedere al mio modello dal controller, ho un "uninitialized constant Admin::Blog::EntriesController::Blog"
da questa linea:
@blog_entries = Blog::Entry.find(:all)
Chiaramente non è trovare correttamente che lo spazio dei nomi è strano perché in base a ciò che ho letto, ho inserito il mio modello nella cartella corretta con la sintassi corretta.
Qualche idea su come posso risolvere questo problema?
Grazie
Ah, grazie, ha funzionato. Tuttavia, risulta che devo anche impostare un nome di tabella personalizzato per il mio modello. Inoltre, il form_per helper non funziona perché usa " _path" per l'attributo action che penso, quindi genera un errore che non riesce a trovare il metodo "blog_entries_path" ... Qualche idea? –
nlaq
Sto iniziando a pensare che i binari corrano su più domini per modelli e controller ... Il che è un peccato perché mi piace molto la struttura del percorso di /. –
nlaq
la convenzione di rotaie è che i nomi dei modelli sono singolari mentre i controllori sono plurali.Forse rinominare il controller Admins :: Blogs :: EntriesController (sì, sembra strano) Forse dovresti anche ripensare usando i modelli con namespace, sono probabilmente più problemi di quanti ne valga, vedi http://stackoverflow.com/questions/601768/namespaced-models-in-rails-whats-the-state-of-the-union – levinalex