#database #laravel #eloquent
#База данных #laravel #красноречивый
Вопрос:
Я хочу сохранить эти данные, сгенерированные create.blade.php посмотреть,
после нажатия кнопки отправки вывод журнала консоли выглядит следующим образом
{ "kode_trx": "PO-2019030004", "no_po": "0005/DIN /III/2019", "pic_po": "Carlo Donadini", "pic_telp": " 39438778020", "top": "RRRRR", "supplier_id": "1", "дата доставки": "28-03-2019", "created_by_id": "1", "total_barang": "7", "grand_total": "122500000", "tb_detail_po": [ [ "BRG-2019030004", "Электрическая фритюрница", "SC-81", "290", "440", "310", "4", "17500000", "70000000", " ", "4", "PO-2019030004", "0005/DIN /III/2019", "1", "5" ], [ "BRG-2019030004", "Электрическая фритюрница", "SC-81", "290", "440", "310", "3", "17500000", "52500000", " ", "4", "PO-2019030004", "0005/DIN /III/2019", "1", "5" ] ] }
итак, я хочу сохранить его в 2 разных таблицах: table purchases и purchase_details
как я предполагаю написать свой код в POController в хранилище методов? ???
Комментарии:
1. Вы уже создали эти схемы баз данных? Используете ли вы модели?
2. Не уверен, в чем вопрос? Вам нужна помощь со схемой базы данных? Как обращаться с данными и преобразовывать их в удобные для работы массивы или коллекции? Вам нужна помощь с моделями Eloquent? Вам нужна помощь со всем, что описано выше? Тогда как вам удалось создать create.blade.php работает? У меня куча вопросов.
3. @thisiskelvin да, я уже создаю схему базы данных, я хочу сохранить данные в таблице PO, а затем в таблице details_PO, связанной с таблицей PO, на основе id или kode_trx
Ответ №1:
Вы можете сохранить данные в таблице purchase
, как показано ниже
class POController extends Controller
{
public function store(Request $request)
{
$purchase = Purchase::create([
"id_penerimaan" => $request->no_nota,
"id_customer" => $request->customer,
"id_karyawan" => $request->karyawan,
"tgl_penerimaan" => CarbonCarbon::now()->format('Y-m-d H:i:s'),
]);
return $purchase;
}
}
А для таблицы, purchase_details
если вы используете Observer, было бы здорово
Пример Observer :
class UserObserver
{
public function created(Purchase $purchase)
{
if (request()->tb_detail_po) {
foreach(request()->tb_detail_po as $detail) {
PurchaseDetail::create([
'id_purchase' => $purchase->id,
'id_penerimaan' => request()->no_nota,
'id_karyawan' => $detail[9],
'id_kategori' => $detail[8],
'sn_barang' => $detail[1],
'nama_barang' => $detail[0],
'kelengkapan' => $detail[2],
'keluhan' => $detail[3],
'id_garansi' => $detail[10],
'id_status' => '1',
'kondisi' => '1'
]);
}
}
}
}
Комментарии:
1. можете ли вы помочь мне с синтаксисом CI для синтаксиса laravel?
2. Я изменил код с данными, как вы просили, вы можете попробовать
Ответ №2:
$result = $request->all();
$created = Your Model::create([Your Data For Table 1]);
if($created) {
foreach($request->tb_detail_po as $details) {
Your Model2::create([Your Detail Data For Table 2]);
}
}
Ответ №3:
Try to use **JSON_DECODE($data)** OR **JSON_ENCODE($data)**