rails 如何在缺少参数时拒绝更新

rails how to reject updating when a parameter is missing

我是 rails 的新手,我想要求用户在更新他的信息之前输入他的 current_password。我知道这可以通过设计来实现,但我想在没有设计的情况下做到这一点,因为我很难修改设计。

我的想法是这样的:

def update

        @edi_user = EdiUser.find(@trader_edi_user.edi_user_id)
        @edi_user.update_attributes(edi_user_params.reject_if{ |attr| params['current_password'].blank? })

        redirect_to :back
    end

我知道这段代码是错误的,但是这种逻辑在rails中可能吗?

或者谁能帮我编写正确的语法代码?

提前致谢

跳过缺少属性的更新,

@edi_user.update_attributes(edi_user_params) if params['current_password'].present?