Я пишу простой опрос для Cakephp.Я создал таблицы опросов и poll_votes.Опрос содержит 7 столбцов: id, вопрос, количество ответов, answer1, answer2, answer3, answer4.PollVote содержит 4: id, poll_id, ip, voice.Если это сработает, я мог бы добавить новую таблицу под названием PollAnswers, чтобы избавиться от ограничения ответов.
К сожалению, сделанное мной представление вызывает ошибки безопасности.Я бы предпочел использовать помощник по формам в целом, но я не понял, как, так как мне нужны переключатели с несколькими опциями, которые имеют идентификаторы от 1 до 4, но показывают answer1 to answer4.
[daweb@directadmin01 public_html]$ cat models/poll.php
<?php
class Poll extends AppModel {
var $name = 'Poll';
var $displayField = 'question';
var $hasMany = array(
'PollVote' => array(
'className' => 'PollVote',
'foreignKey' => 'poll_id',
'dependent' => false
)
);
}
?>
[daweb@directadmin01 public_html]$ cat models/poll_vote.php
<?php
class PollVote extends AppModel {
var $name = 'PollVote';
var $belongsTo = array(
'Poll' => array(
'className' => 'Poll',
'foreignKey' => 'poll_id'
)
);
}
?>
[daweb@directadmin01 public_html]$ cat views/polls/view.ctp
<h2><?=$polls[0]['Poll']['question']?></h2>
<?php
echo $this->Form->create('Poll');
?>
<br /><p>
<select name="PollName" id="PollFieldId">
<option value="0"><?=$polls[0]['Poll']['answer1']?></option>
<option value="1"><?=$polls[0]['Poll']['answer2']?></option>
<option value="2"><?=$polls[0]['Poll']['answer3']?></option>
<option value="3"><?=$polls[0]['Poll']['answer4']?></option>
</select>
<?php
echo $this->Form->input('id', array('type' => 'hidden'));
echo $this->Form->end('Submit');
?>
</p>
[daweb@directadmin01 public_html]$
Честно говоря, я не уверен, что создаю приложение Poll с правильным дизайном, поэтому приветствуются общие советы.К сожалению, мне не удалось найти примеры опросов, написанных на Cakephp, чтобы помочь мне.