laravel - 将额外的属性附加到 Laravel 数据透视表

标签 laravel laravel-5

我的数据透视表中有 4 个额外的属性('product_id'、'quantity'、'discount_percent'、'discount_amount'),但我存储时这些属性的值始终为 0,而其余属性则正确填充。有任何想法吗?

发票模型

public function productversion()
{
    return $this->belongsToMany('App\Productversion')->withPivot('product_id', 'quantity', 'discount_percent', 'discount_amount')->withTimestamps();
}

产品版本模型
public function invoice()
{
    return $this->belongsToMany('App\Invoice')->withPivot('product_id', 'quantity', 'discount_percent', 'discount_amount')->withTimestamps();
}

Controller (商店)
$invoice->productversion()->attach($productversionid, ['product_id' => $productid], ['quantity' => $qty], ['discount_percent' => $discountprc], ['discount_amount' => $discountamt]);

最佳答案

只需一个数组即可:

$invoice->productversion()->attach($productversionid, [
  'product_id' => $productid,
  'quantity' => $qty,
  'discount_percent' => $discountprc,
  'discount_amount' => $discountamt
]);

关于laravel - 将额外的属性附加到 Laravel 数据透视表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39169519/

相关文章:

php - 类别名冲突 Laravel 4

codeigniter - Laravel 与 Codeigniter - 在 Laravel 中获取 CI 的 HMVC 功能

mysql - Laravel query builder - 如何按别名分组,或做原始 groupBy

laravel - 如何使用 Laravel Passport 通过 API 测试身份验证?

cron 作业未在 laravel 5.2 的 goDaddy 共享主机中运行

left-join - Laravel 5,连接子句中的派生表?

php - whereBetween Eloquent 查询返回空输出

php - 如何使用验证 'unique' 访问 Laravel 中的自定义文本框名称?

php - Apache、PHP、MySQL、PDO、权限被拒绝、laravel

laravel homestead 32位中的php 7 MCRYPT_RIJNDAEL_128错误