0

我们正在开发一个与现有应用程序集成的 Rails 应用程序。我们使用 Mule 和 restful 接口在两个应用程序之间移动数据。

我们有一些代码表,例如从旧应用程序到新应用程序的优先级和类型。如果我们可以为两个应用程序使用相同的 ID 号,移动使用这些 ID 作为外键的数据记录会更容易。

有没有办法让 ID 成为通过 Rails RESTful 接口更新的字段之一?

我希望这个工作:

http://localhost:5000/types?type[id]=315&type[typecode]=test

这是 POST 的类型控制器:

  # POST /types
# POST /types.json
def create
  @type = Type.new(params[:type])

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

现在,如果我发布那个 URL,它会创建一个 typecode=test 的新类型记录,但是 id 是下一个可用的 id,而不是我在 URL 中提供的那个。

谢谢您的帮助!

4

1 回答 1

0

你试过这个吗?

      @type = Type.new(params[:type])
      if params[:type][:id]
          @type.id = params[:type][:id]
      end
      @type.save
于 2013-04-19T18:43:18.293 回答