Не удается вставить данные в связи «один ко многим» с дополнительными полями. - PullRequest
0 голосов
/ 24 августа 2018

Я пытаюсь создать запись из родительских отношений.

Мои модели

use Illuminate\Database\Eloquent\Model;

class Cheque extends Model
{
    protected $fillable = [
        "numero",
        "banco",
        "factura_id",
    ];

    public function factura()
    {
        return $this->belongsTo('App\Factura');
    }
}

class Factura extends Model
{
    protected $fillable = [
        'cliente_id',
        'cotizacion_id',
        'sub_total',
        'porcentaje_descuento',
        'descuento_total',
        'total',
        'iva',
    ];

 public function cheque()
    {
        return $this->hasMany('App\Cheque');
    }

Это мой код в FacturaController

$factura = Factura::create($request->all());

$factura->cheque()->create($request->cheque);

Запрос:

{
    "cliente_id" : "3",
    "nombre" : "gustavo",
    "sub_total" : 20000.50,
    "porcentaje_descuento" : 20,
    "descuento_total" : 50,
    "total" : 100,
    "iva" : 12,
    "cheque" : {
                    "1" : {
                            "numero" : "25525886",
                            "banco" : "banesco"
                          }
                }     
}

«Чек» создан, но поля «цифра» и «банко» оставлены пустыми.

Что я делаю не так?

Заранее спасибо

Ответы [ 2 ]

0 голосов
/ 24 августа 2018
    $factura = Factura::create($request->all());
$cheque = Cheque::create($request->only(['input', 'inputenter code here']);
$cheque = factura_id = $factura-id;
$cheque->save();

это что-то вроде

0 голосов
/ 24 августа 2018

$factura->cheque($factura_id)->create($request->cheque);

Попробуйте это.

...