هل تريد تحديث العديد من البيانات المتعددة باستخدام الجداول التي تنتمي إليها؟
-
21-12-2019 - |
سؤال
اسف للغتى الانجليزيه
أريد جدولين
الفواتير
- بطاقة تعريف
- معرف المستخدم
- اسم
- أنشئت في
- update_at
عناصر الفواتير
- بطاقة تعريف
- هوية صوتية
- عنوان
- createad_at
- update_at
عارضات ازياء
class Invoices extends eloquent{
public function invoicesitems(){
return $this->hasMany('Invoicesitem');
}
}
class Invoicesitems extends eloquent{
public function invoices(){
return $this->belongsTo('Invoice');
}
}
الآن، لتحديث بنود فواتيري؟مثال: تحتوي فواتيري على 5 عناصر، وأحتاج إلى التحديث إلى 10 عناصر
أولا قم بحذف كافة بنود فواتيري وأدخل جديد ؟؟؟
$invoices = Invoices::findOrFail($id);
$dataupdate = array(
'user_id' => Input::get('user'),
'name' => Input::get('name'),
);
$invoices->fill($dataupdate);
$invoices->save();
// طيب قم بتحديث الفواتير، والآن كيف يتم تحديث العناصر؟يشكركم.
المحلول
إذا كان منطق عملك يسمح بذلك - يمكنك فقط استبدال عناصر الفاتورة.
$invoice = Invoices::findOrFail($id);
$dataupdate = array(
'user_id' => Input::get('user'),
'name' => Input::get('name'),
);
$invoice->update($dataupdate);
// replace invoice items
$invoice->invoicesitems()->delete();
$invoice->invoicesitems()->create($invoiceItems);
ملحوظة!هذا هو الحل المباشر تماما.يمكنك التحسن باستخدام insert()
طريقة بدلا من create()
لإدراج الدفعة.
لا تنتمي إلى StackOverflow