Hanan Fahad2 نشر 23 فبراير 2022 أرسل تقرير نشر 23 فبراير 2022 Schema::create('materials', function (Blueprint $table) { $table->id(); $table->string("MaterialName"); $table->foreignId('categories_id')->constrained('categories'); $table->foreignId('Unit_id')->constrained('units'); $table->float("pricebuy"); $table->float("prices sale"); $table->timestamps(); }); $MaterialName = $request->MaterialName ; $categories_id = $request->categories_id ; $Unit_id =$request->Units ; $pricebuy =$request->pricebuy ; $prices_sale = $request->prices_sale ; Materials::create( [ "MaterialName"=> $MaterialName ,"categories_id" =>$categories_id , "Unit_id" => $Unit_id , "pricebuy" => $pricebuy , "prices_sale"=> $prices_sale ] ); ابغا ادخل الحقول بالقاعدة وهي عبارة عن مصفوفه categories_id "Unit_id" كيف ادخلهم رافض معي يطلع لي Array to string conversion 1 اقتباس
0 محمد أبو عواد نشر 23 فبراير 2022 أرسل تقرير نشر 23 فبراير 2022 هل يمكنك ارفاق شيفرة النموذج الخاص بادخال البيانات؟ اقتباس
0 Hanan Fahad2 نشر 23 فبراير 2022 الكاتب أرسل تقرير نشر 23 فبراير 2022 <form class="card" action="{{route("Materials.store")}}" method="POST"> @csrf <div class="card-header"> <h3 class="card-title">Suppliers </h3> </div> <div class="card-body"> <div class="row"> <div class="col-md-12"> <div class="form-group"> <label>Material Name</label> <input class="form-control " type="text" placeholder="" name="MaterialName"> </div> <div class="form-group"> <label>Purchasing price </label> <input class="form-control " type="number" placeholder="" name="pricebuy"> </div> <div class="form-group"> <label>selling price </label> <input class="form-control " type="number" placeholder="" name="prices sale "> </div> <div class="form-group"> <label>Categories </label> <select multiple class="form-control select2bs4 select2-hidden-accessible" style="width: 100%;" aria-hidden="true" name="categories_id[]"> @foreach($Categories as $Categories ) <option value=" {{$Categories->id }}"> {{$Categories->CategoryName }}</option> @endforeach </select> </div> <div class="form-group"> <label>Units </label> <select multiple class="form-control select2bs4 select2-hidden-accessible" style="width: 100%;" aria-hidden="true" name="Units[]"> @foreach($Units as $Units ) <option value=" {{$Units->id }}"> {{$Units->UnitName }}</option> @endforeach </select> </div> <button type="submit" class="btn btn-success col fileinput-button dz-clickable"> <i class="fas fa-plus"></i> <span>Add </span> </button> </div> </div> </div> </form> 1 اقتباس
0 محمد أبو عواد نشر 23 فبراير 2022 أرسل تقرير نشر 23 فبراير 2022 بتاريخ 4 دقائق مضت قال hanan fahad11: <form class="card" action="{{route("Materials.store")}}" method="POST"> @csrf <div class="card-header"> <h3 class="card-title">Suppliers </h3> </div> <div class="card-body"> <div class="row"> <div class="col-md-12"> <div class="form-group"> <label>Material Name</label> <input class="form-control " type="text" placeholder="" name="MaterialName"> </div> <div class="form-group"> <label>Purchasing price </label> <input class="form-control " type="number" placeholder="" name="pricebuy"> </div> <div class="form-group"> <label>selling price </label> <input class="form-control " type="number" placeholder="" name="prices sale "> </div> <div class="form-group"> <label>Categories </label> <select multiple class="form-control select2bs4 select2-hidden-accessible" style="width: 100%;" aria-hidden="true" name="categories_id[]"> @foreach($Categories as $Categories ) <option value=" {{$Categories->id }}"> {{$Categories->CategoryName }}</option> @endforeach </select> </div> <div class="form-group"> <label>Units </label> <select multiple class="form-control select2bs4 select2-hidden-accessible" style="width: 100%;" aria-hidden="true" name="Units[]"> @foreach($Units as $Units ) <option value=" {{$Units->id }}"> {{$Units->UnitName }}</option> @endforeach </select> </div> <button type="submit" class="btn btn-success col fileinput-button dz-clickable"> <i class="fas fa-plus"></i> <span>Add </span> </button> </div> </div> </div> </form> لاحظي أن اسم الحقل الخاص Units عبارة عن مصفوفة , أنتي تحاولين تخزين مصفوقة في الحقل Unit_id وهو على الأغلب من نوع int وهذا سبب المشكلة ما نوع العلاقة بين الجدولين units و Materials؟ اقتباس
0 محمد أبو عواد نشر 23 فبراير 2022 أرسل تقرير نشر 23 فبراير 2022 طالما أن العديد من Materials سوف ينتمي الى العديد من units فمن المفترض ان تكون العلاقة many to many ويكون هناك جدول وسيط بين الجدولين باسم material_unit وتقومين بانشاء العلاقات كالتالي في جدول unit public function materials(){ return $this->belongsToMany(Unit::class); } في جدول materials public function units(){ return $this->belongsToMany(Materials::class); } ثم سوف تقومين بتعديل جدول Materials وتقومين بحذف الحقل unit_id , ثم عند تخزين البيانات تقومين باستخدام التابع $matrtial=Materials::create( [ "MaterialName"=> $MaterialName ,"categories_id" =>$categories_id , "pricebuy" => $pricebuy , "prices_sale"=> $prices_sale ] ); $matrtial->units()->sync($request->units); وبهذا سوف يتم تخزين الوحدات المرتبطة بالمواد في الجدول الوسيط بينهم , ويمكنك الحصول على الوحدات الخاصة ب material معين كالتالي $material->units() أو يمكنك استخدام التابع with لتحميل البيانات بشكل مسبق كالتالي Materials::with(['units'])->get(); ويمكنك تمرير ال materials التي تم الحصول عليها الى اي ملف عرض تريديه وسوف يكون مع كل material ال units الخاصة به اقتباس
السؤال
Hanan Fahad2
Schema::create('materials', function (Blueprint $table) { $table->id(); $table->string("MaterialName"); $table->foreignId('categories_id')->constrained('categories'); $table->foreignId('Unit_id')->constrained('units'); $table->float("pricebuy"); $table->float("prices sale"); $table->timestamps(); });
$MaterialName = $request->MaterialName ; $categories_id = $request->categories_id ; $Unit_id =$request->Units ; $pricebuy =$request->pricebuy ; $prices_sale = $request->prices_sale ; Materials::create( [ "MaterialName"=> $MaterialName ,"categories_id" =>$categories_id , "Unit_id" => $Unit_id , "pricebuy" => $pricebuy , "prices_sale"=> $prices_sale ] );
ابغا ادخل الحقول بالقاعدة وهي عبارة عن مصفوفه
categories_id
"Unit_id"
كيف ادخلهم رافض معي
يطلع لي
Array to string conversion
5 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.