在数据库中,我有4个定价计划值: -星号(plan_id = 1) -月亮(plan_id = 2) -太阳(plan_id = 3) -银河(plan_id = 4)
在注册页面上,我只想显示plan_id 2和3。可以吗?
我当前的定价计划选项代码如下:
<div class="form-group">
<label for="plan_id">Plan</label>
<select class="form-control select2" name="plan_id" id="plan_id" required>
<option value="" disabled selected>Choose a plan</option>
@foreach($plan as $plans)
<option value="{{ $plans->id }}">{{ $plans->plan_name }}</option>
@endforeach
</select>
</div>
将感谢您能提供的任何帮助。谢谢
答案 0 :(得分:0)
您希望将模板中的数据操作减至最少,因此理想情况下,您将在控制器中处理数据并将其传递给模板。上面的代码是否由注册页面和其他页面共享?如果不是,那么您可以在控制器中过滤数据以仅返回plan_id 2和3,然后将其传递给模板。
在控制器中:
$plans = [
['id' => 1, 'plan_name' => 'Star'],
['id' => 2, 'plan_name' => 'Moon'],
['id' => 3, 'plan_name' => 'Sun'],
['id' => 4, 'plan_name' => 'Galaxy'],
];
$filtered = array_filter($plans, function($plan) {
return in_array($plan, [2, 3]);
});
然后,您可以将$filtered
传递给模板。