我使用Builder插件创建了两个插件( States和Suburbs),到目前为止效果很好。
问题是,在States插件中,我只是允许添加州名,而在 Suburbs 插件中,我允许用户先选择 State,然后输入郊区名称。到目前为止,这两个插件都可以正常工作。
现在的问题是,我有第三个插件,称为Properties,其中我有这两个下拉列表State和Suburb,但到目前为止,All States 和 All Suburbs 都在显示。但我希望用户选择第一个州,然后根据州选择,它应该将所有郊区都放到我的另一个郊区下拉列表中。
我曾尝试使用Builder 插件提供的dependsOn,但我只是无法理解根据我目前的情况逐步实现它的流程。下面是我到目前为止所做和尝试的代码。
插件\technobrave\properties\models\Property.php
<?php namespace Technobrave\Properties\Models;
use Model;
use technobrave\states\Models\State as State;
use technobrave\suburbs\Models\Suburb as Suburb;
public function getStateIdOptions()
{
// getting all states
$get_all_states = State::all();
$fields[''] = 'Select any State';
foreach ($get_all_states as $current_state) {
$fields[$current_state->attributes['id']] = $current_state->attributes['state_name'];
}
ksort($fields);
return $fields;
}
public function getSuburbIdOptions($stateId)
{
// getting all suburbs
$get_all_suburbs = Suburb::all();
$fields[''] = 'Select any Suburb';
foreach ($get_all_suburbs as $current_suburb) {
$fields[$current_suburb->attributes['id']] = $current_suburb->attributes['suburb'];
}
ksort($fields);
return $fields;
}
}
从这里开始我该怎么做?任何帮助或指导都将受到高度赞赏和有用。
谢谢