2011-10-29 5 views
0

私のコンピュータに2つのRuby on Railsプロジェクトがあります。何らかの理由で、私は1つのプロジェクトで足場を生成するときに私が取得:xmlとjsonの書式設定で1つのプロジェクトを生成するレール

# POST /users 
    # POST /users.xml 
    def create 
    @user = User.new(params[:user]) 
    respond_to do |format| 
     if @user.save 
     format.html { redirect_to(@user, :notice => 'User was successfully created.') } 
     format.xml { render :xml => @user, :status => :created, :location => @user } 
     else 
     format.html { render :action => "new" } 
     format.xml { render :xml => @user.errors, :status => :unprocessable_entity } 
     end 
    end 
    end 

およびその他における:

# POST /users 
    # POST /users.json 
    def create 
    @user = User.new(params[:user]) 

    respond_to do |format| 
     if @user.save 
     format.html { redirect_to @user, notice: 'User was successfully created.' } 
     format.json { render json: @user, status: :created, location: @user } 
     else 
     format.html { render action: "new" } 
     format.json { render json: @user.errors, status: :unprocessable_entity } 
     end 
    end 
    end 

奇妙なことは、私は同じコンピュータの両方で生成していますということです。 私がruby -vを実行すると、私は1.9.2を取得します。

どのように足場を構成して、どちらか一方を生成することはできますか?今私は.xmlに興味がありますが、多分私はいつかjsonに切り替えるでしょう。とにかく、私は手動でこれを行うことができますが、いくつかのテーブル(または1つのテーブルでも)があれば、多くの作業が必要です。どのようにすれば、特にデフォルトで1つのフォーマットが必要なのかをレールに伝えることができますか?

+0

どちらも同じバージョンのレールを使用していますか? – drnewman

+0

xmlを生成するものはレール3.1.1を持ち、jsonを生成するものは3.1.0です。 – marimaf

答えて

2

ほとんどの場合、2つのアプリケーションで異なるバージョンのレールを使用しています。Rails 3.0 scaffoldがXMLコードを生成し、Rails 3.1 scaffoldがjsonコードを生成します。インストールされている複数のバージョンのレールについてgemリストを確認してください。

+0

実際には、xmlを生成するものは3.1.1 *のレールがありますが、何らかの理由でGemfileに3.0.10と表示されます)、jsonを生成するものは3.1.0です(そしてgemfileには3.1.0もあります) 。 – marimaf

+0

gemfileを3.1.1に更新して、他のレールと同じバージョンのレールを使用しましたが、スキャフォールドはまだjson – marimaf

+0

を生成しています。レール= 3.1スカフォールドがxsonではなくjsonを生成すると確信しています。 Gemfile.lockで間違っています。どのバージョンのレールが指定されているか確認してください。 –

関連する問題