1


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

就我而言,我想更新项目表中的“标识符”属性。

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

结尾

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

4

2 回答 2

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
于 2013-03-19T08:57:03.483 回答
0

无法更新项目的标识符,因为 redmine 在项目的 url 中使用了它。
所以在创建一个新项目之前,你必须确保标识符是完全正确的,因为一旦你创建了它,你就不能修改它。

于 2013-04-11T10:39:52.320 回答