我尝试制作一个具有多个日期输入的表单,我从注册/登录刀片模板复制了模型,但是它不起作用,这是我在模板中所做的事情:
<form method="POST" action="{{ route('createDispo') }}">
@csrf
<div class="form-group row">
<label for="date_debut" class="col-md-4 col-form-label text-md-right">Date de début</label>
<div class="col-md-6">
<input type="date" name="date_debut" class="form-control" required>
</div>
</div>
<div class="form-group row">
<label for="date_debut_heure" class="col-md-4 col-form-label text-md-right">Heure de début</label>
<div class="col-md-6">
<input type="date" name="date_debut_heure" class="form-control" required>
</div>
</div>
<div class="form-group row">
<label for="date_fin" class="col-md-4 col-form-label text-md-right">Date de fin</label>
<div class="col-md-6">
<input type="date" name="date_fin" class="form-control" required>
</div>
</div>
<div class="form-group row">
<label for="date_fin_heurev" class="col-md-4 col-form-label text-md-right">Heure de fin</label>
<div class="col-md-6">
<input type="date" name="date_fin_heure" class="form-control" required>
</div>
</div>
<div class="form-group row mb-0">
<div class="col-md-6 offset-md-4">
<button type="submit" class="btn btn-primary">
Ajouter
</button>
</div>
</div>
</form>
但是表单不会像注册或登录那样返回$data
数组,而是仅返回第一个值(date_debut
而不是数组,如何使用Laravel正确地形成表单?
编辑:
这是我的控制人
public function createDispo(array $data){
$disponibilite = new Disponibilite();
$disponibilite->date_debut = $data["date_debut"];
$disponibilite->date_fin = $data["date_fin"];
//$user->disponibilites()->save($disponibilite);
}
问题是我没有收到这个“数据”数组,而只有一个值(第一个日期选择器)
答案 0 :(得分:1)
您可以使用$request
访问提交的数据。 The docs describe it well。就您而言:
use Illuminate\Http\Request;
public function createDispo(Request $request){
$disponibilite = new Disponibilite();
$disponibilite->date_debut = $request->date_debut;
$disponibilite->date_fin = $request->date_fin;
// ...
}
答案 1 :(得分:0)
当您以这种形式发送HTTP请求时,应获取此信息的方法应接收Illuminate / Http / Request类。
控制器登录的方式有所不同,因为控制器在验证后将$ request-> all()(这是一个数组)发送给方法登录。
所以您要做的就是更改:
public function createDispo(array $data){
收件人
public function createDispo(Request $data){
或更与变量保持一致:
public function createDispo(Request $request){
然后您可以通过以下方式访问数据:
public function createDispo(Request $request){
$disponibilite = new Disponibilite();
$disponibilite->date_debut = $request->date_debut;
$disponibilite->date_fin = $request->date_fin;
//$user->disponibilites()->save($disponibilite);
}
记住在使用Request时要导入Illuminate \ Http \ Request类