Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails Rails生成一个xml项目和另一个json格式项目_Ruby On Rails - Fatal编程技术网

Ruby on rails Rails生成一个xml项目和另一个json格式项目

Ruby on rails Rails生成一个xml项目和另一个json格式项目,ruby-on-rails,Ruby On Rails,我的计算机上有两个RubyonRails项目。出于某种原因,当我在一个项目中生成脚手架时,我得到: # 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 suc

我的计算机上有两个RubyonRails项目。出于某种原因,当我在一个项目中生成脚手架时,我得到:

  # 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。无论如何,我知道我可以手动完成这项工作,但是如果您有多个表(或者甚至有一个表),这项工作将非常繁重。我如何告诉rails,默认情况下我需要一种特定格式?

很可能您在两个应用程序中使用了不同版本的rails。。Rails 3.0 scaffold生成xml代码,Rails 3.1 scaffold生成json代码。。检查gem列表中安装的多个rails版本。

它们都使用相同版本的rails吗?生成xml的版本是rails 3.1.1,生成json的版本是3.1.0。实际上,生成xml的版本是rails 3.1.1*,但在Gemfile中由于某种原因显示为rails 3.0.10),而生成json的版本是3.1.0(在GEM文件中,它也有3.1.0)。我将gemfile更新为3.1.1,使rails的版本与另一个版本相同,但scaffold仍在生成json。我非常确定rails>=3.1 scaffold将生成json而不是xml。gemfile.lock可能有问题。检查它指定的rails版本。你是对的!xml one sa的Gemfil.lockys rails(3.0.10)和生成json的一个都是3.1.1,即使我做rails-v时他们都是3.1.1,我应该/可以手动更改吗?很抱歉这么晚才回来..更改的简单方法是删除Gemfile.lock并进行捆绑安装,但在此之前,请在Gemfile中指定您想要的rails版本。。