De juiste oplossing hangt af van of u van plan bent om scalaire waarden op te slaan onder $_POST['invoice']['new_item_attributes'] of dat u van plan bent er een array van arrays van te maken (met andere woorden, u plant veelvouden van de new_item_attributes .
Als u alleen scalaire waarden wilt opslaan, moet u eerst elk van de formulierelementen wijzigen om er als volgt uit te zien:
name="inovoice[new_item_attributes][description]"
Je zult merken dat de lege [] weg is.
En dan zou je loop er zo uit moeten zien:
foreach($_POST['invoice']['new_item_attributes'] as $key => $val) {
$data = array('description => $value);
}
Anders moet je dit in je PHP-code gebruiken:
foreach($_POST['invoice']['new_item_attributes'] as $key => $val) {
$data = array('description' => $val['description']);
}
Of:
foreach($_POST['invoice']['new_item_attributes'] as $key => $val) {
foreach($val as $sub => $value) {
$data = array($sub => $value);
}
}