来自数组表单元素验证的yii2

来自数组表单元素验证的yii2,yii2,Yii2,我有一个包含数组元素的表单,我必须验证它。我无法使用内置的验证规则对其进行验证,因为数据库中不存在元素。我正在序列化数据并将它们保存在数据库中的单个字段中。因此,我尝试使用自定义验证进行验证。 我的实际问题是数组字段正在验证,但它没有在相应字段中显示验证错误消息 这是表单 您可以向模型类添加属性,如下所示: class MyModel extends \yii\db\ActiveRecord { public $shipperAddressLine1; public $ship

我有一个包含数组元素的表单,我必须验证它。我无法使用内置的验证规则对其进行验证,因为数据库中不存在元素。我正在序列化数据并将它们保存在数据库中的单个字段中。因此,我尝试使用自定义验证进行验证。 我的实际问题是数组字段正在验证,但它没有在相应字段中显示验证错误消息

这是表单


您可以向模型类添加属性,如下所示:

class MyModel extends \yii\db\ActiveRecord {
    public $shipperAddressLine1;
    public $shipperAddressLine2;
    public $shipperCity;
    public $shipperPin;
    ...
}

然后,您可以像添加数据库属性一样为它们添加验证规则。

OK。这很好,但在我的数据库中只有一个名为shipper的字段用于保存这些数据(地址行1、地址行2、城市、pin等)。因此,我正在序列化这些值并将其保存到数据库中的shipper字段。我如何做到…?这就是我序列化字段“serializedAttributes”=>[“class”=>serializedAttributes::className(),“attributes”=>[“shipper”],]的方式,您可以使用序列化行为对属性进行序列化或im序列化