В настоящее время я создаю приложение для управления моими действиями TO-DO.CAKEPHP - самозаписывающаяся таблица перезаписывает переменную
В моей модели базы данных Я создал таблицу, которая ссылается на таблицу задач, чтобы я мог создавать требования к задачам. Таким образом, я могу запускать/показывать задачи только в моем списке, когда выполняю требуемые задачи.
Модель:
Функциональность работает отлично, но у меня есть проблема с CakePHP способом получения переменных с вашей точкой зрения.
С родительского и дочернего ид являются одновременно [projecttasks] [projecttasks_name], последний перезаписывает первый, в результате этого на странице:
Но когда я нажимаю редактировать, вы можете увидеть это на самом деле сохранены правильно:
Теперь в коде это выглядит с точки зрения:
<?php foreach ($itemrequirements as $itemrequirement): ?>
<tr>
<td><?php echo h($itemrequirement['Projecttask']['projecttasks_name']); ?></td>
<td><?php echo h($itemrequirement['Projecttask']['projecttasks_name']); ?></td>
<td class="actions">
<?php echo $this->Html->link('View',array('action' => 'detail', $itemrequirement['Itemrequirement']['itemreq_id'])); ?>
<?php echo $this->Html->link('Edit',array('action' => 'edit', $itemrequirement['Itemrequirement']['itemreq_id'])); ?>
<?php echo $this->Form->Postlink('Delete',array('action' => 'delete', $itemrequirement['Itemrequirement']['itemreq_id']),
null, sprintf('Are you sure you want to delete %s?', $itemrequirement['Itemrequirement']['itemreq_id'])); ?>
</td>
</tr>
<?php endforeach; ?>
контроллер:
public function index() {
// write redirect information for screens into session
$this->Session->write('Redirector.controllername', 'itemrequirements');
$this->Session->write('Redirector.controllerfunction', 'index');
$this->Session->write('Redirector.recordindex', NULL);
// build index
$this -> Itemrequirement -> recursive = 0;
$this -> set('itemrequirements', $this -> paginate());
// get total record count
$totalItemrequirements = $this -> Itemrequirement -> find('count');
// expose total-count to the view
$this -> set('totalItemrequirements', $totalItemrequirements);
}
Я спросил своего босса, и он указал эту часть (файл модели). Думал, что поделюсь.
/**
* declare BelongsTo relations
*
* @var array $belongsTo
* @link http://book.cakephp.org/2.0/en/models/associations-linking-models-together.html#belongsto BelongsTo docs (CakePHP cookbook)
*/
public $belongsTo = array(
'Projecttask' => array(
'className' => 'Projecttask',
'foreignKey' => 'itemreqs_rel_projectparents'
),
'Projecttask' => array(
'className' => 'Projecttask',
'foreignKey' => 'itemreqs_rel_projectchilds'
)
);
Есть ли способ получить правильное представление? Я довольно новичок в MVC-модели и сделал большую часть своего кода, используя генератор кода, который у нас работает.
Мой запрос запутывается, хотя я и не знаю, где его исправить. Спасибо, в любом случае. – nlreturns