Как сохранить переданный идентификатор моей формы в другой форме? например, у меня есть http://192.168.6.253/computers/brands/table/4
, который отображает все записи от брендов, принадлежащих компьютерам с условием computer_id = 4. Теперь у меня есть add(), который направляет меня на http://192.168.6.253/computers/brands/add
.
Моя проблема в том, что я хочу сохранить computer_id = 4, чтобы при добавлении нового бренда он сохранил его в Brand.computer_id в БД. Поэтому я хочу что-то вроде http://192.168.6.253/computers/brands/add/4
.
Вот как я называю надстройку() на мой взглядCakePHP поддерживает идентификатор даже при изменении вида
echo $this->Html->link('Add Brands Here', array(
'controller' => 'brands',
'action' => 'add'))
);
Вот как я называю мой настольный бренд также в мои компьютеры смотреть
echo $this->Html->link('P',array('action' => '../brands/table', $computer['Computer']['id']));
И мой бренд добавить() и таблицы() контроллер
public function table($id = null){
if (!$id) {
throw new NotFoundException(__('Invalid post'));
}
$this->paginate = array(
'conditions' => array('Brand.computer_id' => $id),
'limit' => 10
);
$data = $this->paginate('Brand');
$this->set('brands', $data);
}
public function add() {
if ($this->request->is('post')) {
$this->Brand->create();
if ($this->Brand->save($this->request->data)) {
$this->Session->setFlash(__('Your post has been saved.'));
$this->redirect(array('action' => 'index'));
} else {
$this->Session->setFlash(__('Unable to add your post.'));
}
}
}
Я использовал echo '$ this-> Html-> link ('Добавить бренды здесь', массив ( 'controller' => 'brand', 'action' => 'add', $ brand ['Brand' ] ['computer_id'] ) ); '. но я всегда получаю ошибку Undefined index: Brand' :( – Ikong
debug() ваши вещи. Вложенные массивы CakePHP могут быть немного причудливыми, но они согласуются с количеством вложенности в зависимости от типа выполняемого запроса. – starlocke
http : //book.cakephp.org/2.0/en/development/debugging.html – starlocke