2012-01-21 1 views
0

У меня есть сайт Rails, для которого требуется много полей формы, которые необходимо заполнить после того, как пользователь первым зарегистрируется (используя большой мастер jQuery). Во-первых, я обернул все «Getting Started» (выполняется, когда пользователь входит в систему в первый раз) конкретный код в контроллере пользователей, как это:Rails запускает мастер в отдельном контроллере от пользовательского контроллера?

Class UsersController < ApplicationController 
    def new 
    @user = User.new 
    end 
    def getting_started 



def getting_started 
    @user = User.find(current_user.id) 
    unless @user.employees.length == 15 
     15.times { @user.employees.build } 
    end 
    end 
end 

Мой вопрос, я должен выделить начала работы метод в собственный контроллер, если метод начала работы начинает расти довольно большим? Что такое «путь рельсов»?

ответ

0

Размер не является тем, что диктует новый контроллер - контроллер Цель диктует новый контроллер. Если он не связан с User и является сущностью, как собственный, новый контроллер. Если это всего лишь User данных, он должен остаться.

Если это просто размер, вы обеспокоены, это зависит. Если это код, действующий непосредственно на User, он может принадлежать модели User. Если нет, то он принадлежит методам private или его собственной библиотеке.

Без дальнейших подробностей относительно того, что getting_started на самом деле, трудно быть более конкретным.

+0

Начало работы в двух словах использует метод построения для создания определенного числа сотрудников. (У каждого пользователя много сотрудников). Метод get_started в основном готовит для создания формы мастера создания. В основном он готовит другие вложенные атрибуты для использования в гигантской форме. Поскольку он смешивает многие из этих разных контроллеров, таких как сотрудники, будет ли он работать в отдельном контроллере? – Flashuni

+0

Я добавил часть кода к исходному сообщению, а также – Flashuni

+0

@Flashuni не звучит как контроллер, если он не взаимодействует с веб-уровнем, звучит скорее как вам нужны помощники/утилиты. Однако все еще неясно. –

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