До сих пор я нашел ответы здесь и никогда не нуждался в спросе. Но эта проблема действительно подтачивает меня. Вот ситуация. У меня есть динамическая форму счета. Сообщения от формы будут сохранены в двух разных таблицLaravel 5.2 Вставка и обновление данных из динамической формы
- счета (где данные счета-фактуры хранятся как member_id, скидки, DueDate, замечания и временные метки)
- invoiceitems (invoice_id, itemdescription, количество, скорость, метки времени)
для достижения этой цели, вот мой метод хранения счета
public function store(InvoiceRequest $request)
{
//get necessary details for invoice table
$datainvoice = array(
'member_id' => $request->input('member_id'),
'duedate' => $request->input('duedate'),
'discount' => $request->input('discount'),
'remarks' => $request->input('remarks'),
//'gtotal' => $request->input ('gtotal'),
);
//save result of invoice
$resultforinvoice = Invoice::create($datainvoice);
// ready all data of invoice items
$datainvoiceitem = array(
'description' => $request->input('description'),
'rate' => $request->input('rate'),
'quantity' => $request->input('quantity'),
'invoice_id' => $resultforinvoice->id,
);
// insert invoice along with invoice_id
Invoiceitem::create($datainvoiceitem);
return redirect('members');
}
Дополнительная информация :
Отношения между членами и счетов-фактур :: Член-имеет-много-фактуры, счета-фактуры принадлежит к одной балкой
Отношения между фактурой и invoiceitems :: счетов-HAS-много-пунктов, ан-элемент-принадлежит к одной накладной
частичной динамической формы:
<td> 1 </td>
<td><textarea type="text" name='description[0][description]' class="form-control"/></textarea> </td>
<td><input type="text" name='quantity[0][quantity]' class="form-control"/></td>
<td> <input type="text" name='rate[0][rate]' class="form-control"/> </td>
Ошибки IM получающей прямо сейчас Аргумент 1 передается осветить \ Database \ Grammar :: параметризацию() должен быть массив типов, в Тегер дал, называемый в C: \ XAMPP \ HTDOCS \ исследования \ поставщика \ Laravel \ Framework \ SRC \ Осветите \ Database \ Query \ грамматик \ Grammar.php на линии 719 и определяется
Update
когда я пытаюсь вернуть входы для invoiceitems, чтобы проверить, что происходит, я получаю массив как ниже
{
"description": [
{
"description": "desc1"
},
{
"description": "desc2"
}
],
"rate": [
{
"rate": "11"
},
{
"rate": "22"
}
],
"quantity": [
{
"quantity": "1"
},
{
"quantity": "2"
}
],
"invoice_id": 41
}
Ребята, расскажите, пожалуйста, дайте мне знать, где не хватает им. Я пробовал просить об этом и в ларакасте, но на пару часов ничего не было, надеюсь, кто-то укажет мне в правильном направлении. Here is the laracast link.
В соответствии с вашими входными именами '$ request-> input ('description')' возвращает массив вместо одного значения. И после этого вы попытаетесь сохранить этот массив как значение столбца. Я не уверен, но я думаю, что это ваша проблема. – Phargelm
@Phargelm Im пытается получить это отсортировано с помощью транспонирования(), я буду поддерживать это обновление после того, как у меня будет действующий код – ashish
@Phargelm im после учебника [ссылка] (https://adamwathan.me/2016/04/06/ clean-up-form-input-with-transpose /) Теперь, когда я получаю массив правильно, но я хочу добавить дополнительную информацию, скажем, invoice_id в массиве. Не могли бы вы указать мне в правильном направлении. Я обновляю свои материалы здесь, [link] (https://laracasts.com/discuss/channels/eloquent/inserting-and-updating-data-from-dynamic-form-properly) – ashish