Správné řešení bude záviset na tom, zda plánujete ukládat skalární hodnoty pod $_POST['invoice']['new_item_attributes'], nebo zda z toho plánujete vytvořit pole polí (jinými slovy, plánujete mít násobky new_item_attributes .
Pokud plánujete ukládat pouze skalární hodnoty, budete muset nejprve změnit každý z prvků formuláře, aby vypadal takto:
name="inovoice[new_item_attributes][description]"
Všimnete si, že prázdné [] je pryč.
A pak by vaše smyčka měla vypadat takto:
foreach($_POST['invoice']['new_item_attributes'] as $key => $val) {
$data = array('description => $value);
}
Jinak to budete muset použít ve svém kódu PHP:
foreach($_POST['invoice']['new_item_attributes'] as $key => $val) {
$data = array('description' => $val['description']);
}
Nebo:
foreach($_POST['invoice']['new_item_attributes'] as $key => $val) {
foreach($val as $sub => $value) {
$data = array($sub => $value);
}
}