清除 Rails 2 中的控制器

发布于 2024-10-03 19:19:32 字数 419 浏览 0 评论 0原文

我制作了一个 Wysiwyg 模块,用户可以在其中为其网站的不同部分创建自定义文本区域。

我通过检查控制器是否已经为这一特定部分创建了控制器来做到这一点。如果有,它会重定向它们:

def new
  if Wysiwyg.find_by_name(params[:name]) != nil
    redirect_to edit_admin_wysiwyg_path(Wysiwyg.find_by_name(params[:name]))
  else
    @wysiwyg = Wysiwyg.new(:name => params[:name])
  end
end

问题是 Rails 仍然认为它是“新的”,即使我已重定向用户进行编辑。我怎样才能“清除”控制器并使其真正相信它实际上是“编辑”?

谢谢!

I made a Wysiwyg module where a user can create custom text areas for different sections of their website.

I do this by checking in the controllers if they have created one for this particular section yet. If they have, it redirects them :

def new
  if Wysiwyg.find_by_name(params[:name]) != nil
    redirect_to edit_admin_wysiwyg_path(Wysiwyg.find_by_name(params[:name]))
  else
    @wysiwyg = Wysiwyg.new(:name => params[:name])
  end
end

The trouble is is Rails still believes its a 'new' even though I have redirected the user to edit. How can I 'clear' the controller's and make it really sincerely believe it is actually an 'edit' ?

Thanks!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

十二 2024-10-10 19:19:32

啊,我的问题出在我的表单实例化中,

古老而邪恶:

<% form_for(@wysiwyg, :url => admin_wysiwygs_path, :html => { :method => :post}) do |f| %>

正确:

<% form_for @wysiwyg, :url => admin_wysiwyg_path do |f| %>

Ah my problem was in my form instantiation

Old and Evil:

<% form_for(@wysiwyg, :url => admin_wysiwygs_path, :html => { :method => :post}) do |f| %>

Correct:

<% form_for @wysiwyg, :url => admin_wysiwyg_path do |f| %>
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文