2013-06-17 2 views
0

Я сделал эту команду: rails g controller father/child и он genersted это для меня:Namespaced контроллеры и классы модулей

class Father::ChildController < ApplicationController 
end 

Но моя цель состоит в том, чтобы это:

module Father 
    class ChildController < ApplicationController 

    end 
end 

Являются ли эти два одинаковых? или я должен использовать генератор контроллера по-другому, чтобы получить этот модуль, например, синтаксис?

+1

Они такие же .. –

+0

Спасибо, поэтому рельсы генерируют первый синтаксис для меня. Поэтому после этого я могу просто передать тип и изменить его на второй синтаксис. Пожалуйста, поправьте меня, если я ошибаюсь. –

+1

Да, вы можете, но обязательно добавьте ':: ApplicationController', иначе он будет работать как' Father :: ApplicationController'. –

ответ

3

Они не то же самое. Второй из них эквивалентен следующему:

class Father::ChildController < Father::ApplicationController 
end 
+0

oh Спасибо, другой человек сказал, что они одинаковы. Мне действительно нужно сгенерировать его, как второй синтаксис. Можете ли вы показать мне, что делать, чтобы сгенерировать код для второго синтаксиса? –

+1

Прошу прощения, мне было немного поститься с моим комментарием, проверьте мой следующий комментарий, чтобы узнать, как вы можете использовать его так, как хотите .. –

+0

@Tim Хорошо, так что это становится немного сложнее. Пожалуйста, взгляните на вопрос, который я задал здесь. Http://stackoverflow.com/questions/17153286/run-generate-controller-command-from-a-module. Второй синтаксис - это моя цель достичь, так как я могу это сделать что? Похоже, то, что мне сказали, не генерирует синтаксис, который нам нужен. –

Смежные вопросы