【问题标题】:Weird Rails URL issue when rendering a new action呈现新操作时出现奇怪的 Rails URL 问题
【发布时间】:2011-03-01 23:42:05
【问题描述】:

我正在呈现一个新动作,但不知何故获得了“索引”URL。更具体地说,我的创建操作如下所示:

class ListingsController < ApplicationController
    def create
        @listing = Listing.new(params[:listing])
        @listing.user = @current_user

        if @listing.save
          redirect_to @listing
        else
          flash[:error] = "There were errors"
          render :action => "new"
        end
      end
end

当出现错误时,我会收到“新”操作,但我的 URL 是索引 URL - http://domain.com/listings

有人知道为什么会这样吗?我的路线文件相当标准:

map.connect 'listings/send_message', :controller => 'listings', :action => 'send_message'
  map.resources :listings
map.root :controller => "listings"
map.connect ':controller/:action/:id'
  map.connect ':controller/:action/:id.:format'

【问题讨论】:

    标签: ruby-on-rails routing


    【解决方案1】:

    当您渲染时,您只会获得将作为响应正文返回给浏览器的内容。 On Rendering your url is not get changed.

    创建脚手架应用程序的最佳示例。因此,当您在新表单上提交表单并发生错误时,会显示您的“new.html.erb”,但您的网址显示domain_name/controller_name/create

    希望有帮助:)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-09-25
      • 1970-01-01
      • 1970-01-01
      • 2010-10-16
      • 1970-01-01
      • 1970-01-01
      • 2013-06-18
      相关资源
      最近更新 更多