【问题标题】:Laravel 4: Unique Validation with Extra Condition While Updating RecordLaravel 4:更新记录时具有额外条件的唯一验证
【发布时间】:2014-11-04 07:55:39
【问题描述】:

我正在软删除数据库中的事件,并且在更新任何事件时,我需要检查用户是否将“sysname”字段的值替换为一些现有(未删除和活动)事件的系统名,然后我需要阻止它。因此,我只想知道,在对相关字段应用唯一验证时,我将如何分配条件来检查 is_deleted = 0status=1

这是我的事件模型代码:

public static function editrules($id=0, $merge=[]) {
    return array_merge(
        [
            'sysname' => 'required|unique:tblEvent,sysname,'.$id.',event_id',
        ], 
        $merge);
}

上面的代码只是防止为当前事件更新现有事件“sysname”。但 我需要知道我需要在上面的示例代码中添加什么代码来检查现有的未删除(is_deleted = 0)和活动事件(status=1

【问题讨论】:

    标签: validation laravel-4 unique conditional-statements


    【解决方案1】:

    "unique:tblEvent,sysname,{$id},event_id,deleted_at,NULL,status,1"

    【讨论】:

    • 我的字段名称是 is_deleted :) 所以它的工作方式是 unique:tblEvent,sysname,{$id},event_id,is_deleted,0,status,1
    猜你喜欢
    • 1970-01-01
    • 2014-06-28
    • 1970-01-01
    • 2018-01-30
    • 2019-06-14
    • 1970-01-01
    • 2014-08-20
    • 2018-07-17
    • 2018-08-09
    相关资源
    最近更新 更多