我有一个single.blade.php文件,显示会议详细信息并且还有一个表单,以便用户可以为每种票证类型选择他想要的票证数量。
当用户选择数量并单击下一步时,请求转到具有storeQuantity()方法的RegistrationController,以便用户将所选数量存储在数组$ selectedTypes中,同时返回数组“$ customQuestions”并重定向用户使用$ selectedTypes数组注册到registration.blade.php:
这个RegistrationController:
public function storeQuantity(Request $request, $id){
$typeQuantities = $request->get('types');
$customQuestions = Question::where('congress_id', $id);
foreach($typeQuantities as $typeName => $quantity){
$type = TicketType::where('name', $typeName)->firstOrFail();
$price = $type->price;
$selectedTypes[$type->name]['quantity'] = $quantity;
$selectedTypes[$type->name]['price'] = $price;
}
return view('congresses.registration')->with('selectedTypes', $selectedTypes)->with('customQuestions', $customQuestions);
}
在registration.blade.php中,我想显示与每种故障单类型相关的自定义问题。我在下面的代码中使用了“{{$ customQuestion-> question}}”,但问题并没有出现。
你知道问题出在哪里吗?
Registration.blade.php:
@if (!empty($allParticipants))
@if($allParticipants == 1)
@foreach($selectedTypes as $k=>$selectedType)
<h6>Participant - 1 - {{$k}}</h6>
<div class="form-group font-size-sm">
<label for="name" class="text-gray">Name</label>
<input type="text" class="form-control" id="name" value="">
</div>
<div class="form-group font-size-sm">
<label for="surname" class="text-gray">Surname</label>
<input type="text" class="form-control" name="surname" id="surname" value="">
</div>
@if (!empty($customQuestions))
@if(count($customQuestions) > 0)
@foreach($customQuestions as $customQuestion)
<div class="form-group font-size-sm">
<label for="surname" class="text-gray">{{$customQuestion->question}}</label>
<input type="text" class="form-control" name="" id="" value="">
</div>
@endforeach
@endif
@endif
@endforeach
@endif
@endif
例如,ID为“1”的国会的组织者可能已为故障单类型“完全访问”创建了自定义问题“您的电子邮件是什么?”。因此,在票证类型为“完全访问”的情况下,除名称和姓氏外,它应显示“您的电子邮件是什么。”
我有这个表格内容和关系:
questions table:
id question congress_id
1 whats your email 1
ticket_type_questions table:
id ticket_type_id question_id
1 1 1 (the ticket type 1 has the question 1)
ticket types table
id name congress_id
1 full access 1
2 basic 1
注意:也许问题是因为在“$ customQuestions = Question :: where('congress_id',$ id);”它会得到与大会相关的问题。但每种票类型都有相关的问题,必要的是显示与每种票类相关的问题,而不是与大会相关的问题。
答案 0 :(得分:1)
我认为您在控制器中传递customeQuestions
s
并在视图中使用customQuestion
。这可能会导致你的问题。
您可能还需要添加
$customQuestions = Question::where('congress_id', $id)->get();