Rails自定义操作

时间:2010-10-14 05:22:05

标签: ruby-on-rails custom-action

我不确定我是否以正确的方式解决这个问题。

我有一个模特邻居。我有两种方法可以添加邻居,一种是登录用户,另一种是公共人物。形式有所不同。所以我用自定义动作创建了另一个视图。问题是这个动作是添加一个新记录,因此调用“创建”。当它调用create动作时,它会查找重定向到公共表单上不存在的路径。

要么我这样做完全错了,要么有办法告诉我的自定义操作保存邻居记录,以便我可以在公共方面重定向。

2 个答案:

答案 0 :(得分:0)

create操作中,根据用户的状态有条件地重定向到公共/私人页面:

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

或者有什么我不理解你的问题吗?

答案 1 :(得分:0)

我认为您正在保存(公共用户和注册用户),邻居详细信息会添加到相同的详细信息中。你有可能通过拥有用户ID或其他东西来区别

如果是这样,我认为你可以使用相同的控制器和动作。你所要做的就是

像is_registred一样识别用户? (假设您有一种方法来识别是否记录了使用)并且仅根据用户负载布局

前:

伪代码将是

if is_registred?
   render public layout
else
   render registerd user layout   

您可能还需要检查授权。希望我理解你的问题

欢呼声

sameera