Автозаполнение полей данных и сохранение данных в массиве в cakephp 2.5.1
Я новичок в CakePHP. У меня есть приложение CakePHP, которое имеет таблицу улиц (со столбцами street_name, house_no, district, city). Мне нужно автоматически заполнить эти данные в форме и сохранить их в массиве для дальнейшей обработки данных. Это должно быть похоже на то, что пользователь будет вводить название улицы в поле Название улицы формы, которая имеет поля - Название улицы, номер дома, район и город. После выбора названия улицы из автоматических предложений соответствующие данные (номер дома, район и город) будут заполнены в других полях формы.
Что я уже пробовал:
Теперь более 25000 строк загружаются в таблицу улиц, которая представляет собой всю базу данных улиц города. эта таблица не связана с другими таблицами приложения через внешние ключи. Уличная модель в /Model/Street.php это следующее:
class Street extends AppModel { public function getStreet ($term = null) { if(!empty($term)) { $streets = $this->find('list', array( 'conditions' => array( 'street_name LIKE' => trim($term) . '%' ) )); return $streets; } return false; } }
В /Controller/StreetsController.php,
class StreetsController extends AppController { public function autocomplete($term){ if ($this->request->is('get')) { $this->autoRender = false; $data = $this->Street->getStreet($term); $this->set(compact('data')); $this->set('_serialize', array('data')); echo json_encode($data); } } }
В /webroot/js/street.js файл,
(function($) { $('#autocomplete').autocomplete({ source: "/street.json" }); })(jQuery);
Входные формы находятся в разных контроллерах. В вид/пользователи/добавить.файл CTP ,
<fieldset> <legend><?php echo __('Address Data'); ?></legend> echo $this->Form->input('street_name', array( 'class' => 'ui-autocomplete', 'id' => 'autocomplete')); echo $this->Form->input('house_no'); echo $this->Form->input('district'); echo $this->Form->input('city'); </fieldset> <?php echo $this->Form->end(__('Save')); ?>
Может ли кто-нибудь сказать мне, пожалуйста, как действовать дальше ? Я нашел несколько учебников, где эта функция автозаполнения реализована с помощью jQuery в CakePHP. Но, это реализуется с помощью одной таблицы, модель, вид и контроллер, как автомобили, Car.php, /вид/легковые автомобили/индекс.ОСАГО , CarsController.php. который не похож на мой сценарий.