我的视图中有一个链接,它通过 ajax 调用下面的方法。我基本上是在尝试获取通过 插入的记录的 id @application.update_attributes(params[:application])
,但是当我调用时@curr_app = @application.application_field.last
,它返回在我的 ajax 调用之前插入的最后一条记录。
例如,如果我最初点击页面并说 application_fields 表中的最高 id 是 50,那么当我点击我的 ajax 链接时,@curr_app.id
无论我点击我的 ajax 链接多少次,它始终是 50。
我想@application.application_field.last
应该得到数据库中的最后一条记录?如何获取最后插入的记录?我必须重新查询吗?
# PUT /applications/1
# PUT /applications/1.json
def update
@application = Application.find(params[:id])
respond_to do |format|
if @application.update_attributes(params[:application])
@curr_app = @application.application_field.last
puts @curr_app.id
format.html { redirect_to @application, notice: 'Application was successfully updated.' }
format.json { head :no_content }
format.js
else
format.html { render action: "edit" }
format.json { render json: @application.errors, status: :unprocessable_entity }
format.js
end
end
end