Draggon, funcionou perfeitamente. Muito obrigado.
Aproveitando que sua dica me ajudou muito.
Gostaria de tirar uma dúvida.
Minha model Contrato está assim.
mysql> desc Contrato;
+--------------+-------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+--------------+-------------+------+-----+---------+----------------+
| id | int(11) | NO | PRI | NULL | auto_increment |
| title | varchar(45) | YES | | NULL | |
| description | varchar(45) | YES | | NULL | |
| date | varchar(45) | YES | | NULL | |
| price | varchar(45) | YES | | NULL | |
| client_name | varchar(50) | YES | | NULL | |
| client_email | varchar(50) | YES | | NULL | |
| client_phone | varchar(50) | YES | | NULL | |
| client_cpf | varchar(50) | YES | | NULL | |
| seguranças | varchar(50) | YES | | NULL | |
+--------------+-------------+------+-----+---------+----------------+
A idéia é que um contrato tenha vários seguranças vinculados a ele.
criei a função jquery no html pra gerar os inputs dinâmicos.
$(document).ready(function() {
var max_fields = 10; //maximum input boxes allowed
var wrapper = $(".input_fields_wrap"); //Fields wrapper
var add_button = $(".add_field_button"); //Add button ID
var x = 1; //initlal text box count
$(add_button).click(function(e){ //on add input button click
e.preventDefault();
if(x < max_fields){ //max input box allowed
x++; //text box increment
$(wrapper).append('<div><input type="text" class="form-control" name="seguranças[seguranças]"/><a href="#" class="remove_field">Remover segurança</a></div>'); //add input box
}
});
$(wrapper).on("click",".remove_field", function(e){ //user click on remove text
e.preventDefault(); $(this).parent('div').remove(); x--;
})
utilizando no button.
< div class="input_fields_wrap">
< div class="add_field_button">
< button class="btn btn-success">
< span class="glyphicon glyphicon-plus">
< /span>Adicionar Segurança
< /button>
< /div>
< br>
< /div>
Meu controller está assim.
public function adiciona () {
Contrato::create(Request::all());
return redirect()->action('ContratoController@lista')
->withInput(Request::only('title'));
}
Sendo que ao tentar inserir um contrato com vário seguranças eu recebo o seguinte erro.
preg_replace():` Parameter mismatch, pattern is a string while replacement is an array
E no banco de dados na coluna segurança fica com o nome Array.
Acho que tenho que trabalhar com coleção de dados, mas nunca fiz isso no Laravel, poderia me ajudar?