【问题标题】:Integrity constraint exception handling with user friendly message Yii2使用用户友好消息 Yii2 的完整性约束异常处理
【发布时间】:2015-04-19 18:13:06
【问题描述】:

我有一个带有三键的表,现在我想在重复组合键时显示“友好”警告:

完整性约束违规 – yii\db\IntegrityException SQLSTATE[23000]: 完整性约束违规: 1062 Duplicate entry 'CP MEIJ 01/15-2' for key 'PRIMARY' 正在执行的 SQL 是:INSERT INTO modelo03 (planificacion_fk, cargo_fk, medida_apl_fk, modelo03_cant, dic_fk) 值('CP MEIJ 01/15', 3, 2, 4, 'SA')

错误信息:数组 ( [0] => 23000 [1] => 1062 [2] => 键 'PRIMARY' 的重复条目 'CP MEIJ 01/15-2')

原因:PDOException SQLSTATE[23000]:完整性约束 违规:1062 键 'PRIMARY' 的重复条目 'CP MEIJ 01/15-2'

在 C:\wamp\www\prueba_protected\vendor\yiisoft\yii2\db\Command.php 中 第768行

实现这一目标的方法是什么?对不起我的英语

【问题讨论】:

    标签: php yii


    【解决方案1】:

    如果您使用ModelActiveRecordModel 类的子类)将此数据插入数据库,则可以使用UniqueValidator

    在这种情况下模型不会被保存,您可以使用$model->errors获取错误列表。

    您可以配置验证器以使用您自己的错误消息。

    【讨论】:

      【解决方案2】:

      停止为新条目插入相同的planificacion_fk。错误说,您正在插入相同的主键值,该主键值对于所有条目必须是唯一的。

      【讨论】:

      • 我知道错误是什么,但我想显示很好的警告,没有那个屏幕
      • 嗨,ernesto,你找到解决mysql错误的方法了吗?
      • 'deleteOptions'=>['title'=>'your tooltip', 'data-toggle'=>'tooltip', 'data-confirm'=>'your text'],跨度>
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-03-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多