我想在调用model::all((时为每个模型方法设置一个参数。
型号:
protected $appends = ['convertedImage'];
public function getconvertedImageAttribute(String $logo_base64) {
//actions here
}
视图:
<script>
var logo_base64 = '...logo_string_to_base_64...';
var allFrames = '{!! AppModel::all()->toJson() !!}';
</script>
我的问题是如何在调用Model::all((时将logo_base64从视图设置为Model方法getconvertedImageAttribute((的参数;
首先,您必须添加静态setter来将logo_base64设置到您的模型:
public static function setLogoStringToBase64($value) {
self::$logoStringToBase64 = $value;
}
此外,将静态变量添加到\App\Model类中。然后,在您的前端部分,您为您分配价值:
AppModel::setLogoStringToBase64(your_value)
然后你必须像这样重写你的属性:
protected $appends = ['converted_image'];
public function getConvertedImageAttribute() {
//actions here with your variable self::$logoStringToBase64
}
注意ConvertedImageAttribute中的大写字母"C"。仅此而已。
此外,您还可以覆盖模型的toJson方法。但我认为,这是不对的。