通过代码更新redmine表

时间:2013-03-19 08:00:22

标签: sql ruby-on-rails redmine redmine-plugins


我正在用redmine编写一个插件,我更新了很多次构建的表,但是当我尝试更新redmine表中的一些属性时,它没有进行炒作。

在我的情况下,我想更新项目表中的“identifier”属性。

def update_project_field()
begin
  @projj=Project.find(params[:project_id]) #current projet
  begin

    if (params[:identifier_pr]) != "" || (params[:identifier_pr]) != nil
        @projj.update_attributes(:identifier => params[:pr_identifier])
        if @projj.save
          flash[:notice] ="ok"
        else
          flash[:error] ="error"
        end

    end
  rescue Exception => e
    puts e.message
    puts e.backtrace.inspect
  end
  redirect_to :action=>'reunion'
end

结束

显示成功消息,但未发生更新。
我该怎么办?
谢谢你的帮助。

2 个答案:

答案 0 :(得分:0)

这可能会有所帮助!

def update_project_field()
  begin
    @projj = Project.find(params[:project_id]) #current projet
    unless params[:identifier_pr].blank?
      @projj.identifier = params[:pr_identifier]
      if @projj.save!
        flash[:notice] = "ok"
      else
        flash[:error] = "error"
      end
    end
  rescue Exception => e
    flash[:error] = "Exception raised"
    puts e.message
    puts e.backtrace.inspect
  end
  redirect_to :action=>'reunion'
end

答案 1 :(得分:0)

项目的标识符无法更新,因为redmine在项目的url中使用它。
因此,在创建新项目之前,您必须确保标识符非常正确,因为一旦创建了标识符,就无法对其进行修改。