0

送信を押してもビュー ページがリダイレクトされません。私が知る限り、私のサーバー出力はリダイレクトが発生したことを示しています。コントローラーのリダイレクトの場所を変更して、これを確認しました。

これがサイクルのサーバーログです

そして私の関連ファイル。

class VenuesController < ApplicationController
  def index
    @venues = Venue.all
  end

  def new 
    @venue = Venue.new
  end

  def create
    @venue = Venue.create(params[:venue])
    if @venue.save
      redirect_to 'index' 
    else
      render 'new' 
    end
  end

  def show
    @venue = Venue.find(params[:id])
  end

  def edit
    @venue = Venue.find(params[:id])
  end

  def update
    @venue = Venue.find(params[:id])
    if @venue.update_attributes(params[:venue])
      flash[:success] = "Your venue has been updated"
      redirect_to 'show'
    else
      render 'edit', flash[:error] = "Unable to update venue"
    end
  end

  def destroy
    @venue = Venue.find(params[:id])
    @venue.destroy
    redirect_to venues_path
  end
end

上記の create メソッドを見ると、Venue.create を Venue.build に変更しています。

その試みのログは次のとおりです。

これが私のsimple_formです

<%= simple_form_for @venue, html: { class: 'form-horizontal' } do |f| %>
    <%= f.input :name, required: true %>
    <%= f.input :address, required: true %>
    <%= f.input :city, required: true %>
    <%= f.input :state, required: true %>
    <%= f.input :zip, required: true %>
    <%= f.input :description, label: "Provide a brief description of venue" %> 
    <%= f.button :submit %>
<% end %>

そして私のモデル

class Venue < ActiveRecord::Base
  attr_accessible :description, :name, :address, :city, :state, :zip

  has_many :events
end

そして、私のスキーマからの抜粋

 create_table "venues", :force => true do |t|
    t.text     "description"
    t.datetime "created_at",  :null => false
    t.datetime "updated_at",  :null => false
    t.string   "name"
    t.text     "address"
    t.string   "city"
    t.string   "state"
    t.string   "zip"
  end

サーバーを再起動し、Webrick から Thin に切り替えました。

要約すると、ログでは (少なくとも初心者の目には) すべてが正常に見えるのに、ブラウザでリダイレクトが発生しない理由を理解するのに困惑しています。

ありがとう

4

1 に答える 1

1

それ以外の

redirect_to 'index'

試す

redirect_to action: 'index'

参考のため:

http://api.rubyonrails.org/classes/ActionController/Redirecting.html#method-i-redirect_to

于 2013-10-03T19:55:37.123 に答える