Rails настраиваемые действия - PullRequest
0 голосов
/ 14 октября 2010

Я не уверен, правильно ли я поступаю, или нет.

У меня есть модель Соседства.У меня есть два способа добавить соседство: один как зарегистрированный пользователь, а другой как публичный человек.Формы немного различаются.Поэтому я сделал другое представление с пользовательским действием.Проблема в том, что это действие добавляет новую запись и, следовательно, вызывает «создать».Когда он вызывает действие create, он ищет перенаправление на путь, который не может существовать в общедоступной форме.

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

Ответы [ 2 ]

0 голосов
/ 14 октября 2010

Я думаю, что вы сохраняете как (публичных, так и зарегистрированных пользователей), детали соседства добавляются к одним и тем же деталям. Вы можете изменить это, имея идентификатор пользователя или что-то еще

если так, как я вижу, вы можете использовать тот же контроллер и действие. Все, что вам нужно сделать, это

идентифицировать пользователя как is_registred? (при условии, что у вас есть метод, чтобы определить, зарегистрировано ли использование или нет) и только в соответствии с макетом пользовательской загрузки

Пример:

псевдокод будет

if is_registred?
   render public layout
else
   render registerd user layout   

и вам, возможно, придется проверить авторизацию. Надеюсь, я понял ваш вопрос

ура

Sameera

0 голосов
/ 14 октября 2010

В действии create условно перенаправьте на открытую / закрытую страницу в зависимости от статуса пользователя:

def create
  # create code goes here
  if current_user?
    redirect_to neighborhoods_path
  else
    redirect_to root_path
  end
end

Или что-то не так из вашего вопроса?

...