处理的提交无效:期望字段“ field_name”的值为字符串类型,给定为空

时间:2018-10-21 14:10:04

标签: php laravel-5.2 dms

我有一个ObjectValue类型的类作为Test

const FIELD_NAME = 'fieldName';

/**
 * @var string
 */
public $fieldName;
public function __construct($fieldName)
{
    $this->fieldName = $fieldName;
    parent::__construct();

}
protected function define(ClassDefinition $class)
{
    $class->property($this->fieldName)->asString();
}

和对应的Mapper类

class TestMapper extends IndependentValueObjectMapper

{

protected function define(MapperDefinition $map)
{
    $map->type(Test::class);

    $map->property(Test::FIELD_NAME)->to('field_name')->asVarchar(255);
}

}

已将其迁移到dms。当我尝试添加field_name并保存时,出现如下错误

  

无效的已提交内容:字段'field_name'的值应为字符串类型,给定为null(视图:\ dms-org \ web.laravel \ resources \ views \ components \ form \ staged-form.blade.php)

我没有给出null,而是我要添加的字符串

1 个答案:

答案 0 :(得分:0)

我认为您正在使用构造函数来玩实体!

您能否将父构造函数调用放在第一行

public function __construct($fieldName)
{
    parent::__construct();

    $this->fieldName = $fieldName;

}

这将确保如果在构造函数上调用任何值,则父类已经正确设置。

我不确定您的情况...

如果我错了请忽略我

谢谢/祝你好运! :)