与HTML共同使用Double foreach并采

时间:2019-04-22 14:13:50

标签: php laravel eloquent

在数据库中,我有带有自定义功能和自定义功能值的产品。例如,产品具有“木材类型”和选项值“橡木”。每个功能和功能值都可以翻译。

在数据库中,我有:

features 
- id
- few other fields (no matter)

feature_langs
- id_feature
- id_lang
- name

feature_values
- id
- few other fieds (no matter)

feature_value_langs
- id_feature_value
- id_lang
- name

现在在产品版本中,我使用htmlCollective并显示具有多个选项的40x选择,它看起来像这样: enter image description here

问题在于加载功能页面随机需要1-1,8s。没有该负载,加载时间将接近500-600ms。

对于数据库查询,我简单地使用:

$features = Feature::with('translation')->get();
$featureValues = FeatureValue::with('translation')->get();

并显示表单:

    @forelse($features as $feature)
       <div class="form-group m-form__group row">
           <label class="col-2 col-form-label">{{ $feature->getName() }}</label>
           <div class="col-5">
{!! Form::select('featureValue',$featureValues->where('id_feature',$feature->id)->map(function ($setting) {
     return ['key' => $setting->getName(), 'value' => $setting->id];
    })->pluck('key', 'value')->prepend('Choose', '')->toArray(), null, array('class' => 'form-control')) !!}
           </div>
           </div>
   @empty
      No data
   @endforelse

有瓶颈吗?或者我缺少什么?

非常感谢您的帮助

0 个答案:

没有答案