Я уже некоторое время пытаюсь обдумать это, и с небольшим успехом занимаюсь веб-исследованиями. Я не могу быть единственным, верно?
Как создать CMS в пространстве имен с помощью Backbone?
В рельсах это относительно просто, но добавление магистрали в уравнение кажется хитрым.
Вот мое основное приложение:
Относительные камни
gem 'rails', '3.1.0.rc4'
gem 'devise'
gem 'rails-backbone', '0.5.0'
Базовая структура приложения
/app
/assets
/javascripts
/backbone
/controllers
- posts_controller.coffee
/models
- post.coffee
/templates
/posts
- edit.jst.ejs
- index.jst.ejs
- new.jst.ejs
- post.jst.ejs
- show.jst.ejs
/views
/posts
- edit_view.coffee
- index_view.coffee
- new_view.coffee
- post_view.coffee
- show_view.coffee
/controllers
/admin
- admin_controller.rb
- posts_controller.rb
- application_controller.rb
- posts_controller.rb
/models
- post.rb
/views
/admin
/posts
- index.html.haml
/posts
- index.html.haml
routes.rb
namespace :admin do
resources :posts
root :to => "posts#index"
end
resources :posts
root :to => "posts#index"
Нужно ли вам создавать еще один каталог "admin" в базовых представлениях и контроллерах, таких как структура rails? Как и рельсы, они ссылаются на одну и ту же базовую модель «без пространства имен»?
Как бы вы затем направили структуру своей магистрали, чтобы получить правильные представления, ограничивая доступ к редактированию, новым, удаляемым обязанностям - и как на них будут ссылаться?
Например, класс обычного магистрального контроллера определяется как ...
class Appname.Controllers.PostsController extends Backbone.Controller
Будет ли это правильным способом определения контроллера пространства имен?
class Appname.Controllers.Admin.PostsController extends Backbone.Controller
Здесь много вопросов, любая помощь будет принята с благодарностью.