Web アプリケーションにプラス/マイナス投票システムを実装しようとしています。現在、ユーザーは私たちのサイトに質問を「投稿」できます。ユーザーが当サイトの閲覧セクションに移動すると、現在 Web サイトで提起されているすべての質問のリストが表示されます。
ユーザーが賛成または反対のリンクをクリックすると、AJAX を介してデータベースを更新する必要があります (つまり、ユーザーをリダイレクトしたり、ページを更新したりしたくありません)。
各アップ/ダウン投票リンクに関連付けられた質問を取得し、そのデータをコントローラーに送信するにはどうすればよいですか?
site/browse:
<?php
/*
* @var $model Question
*/
//loop through all the given questions
foreach($model as $q)
{
//add the upvote and downvote (text for now)
echo CHtml::ajaxLink('up', array('question/upvote'));
echo ("  - ");
echo CHtml::ajaxLink('down', array('question/downvote'));
echo '<br />';
echo CHtml::link($q['name'], array('question/browse/'.$q['_id']));
echo "<br />Description: " . $q["description"] . "<br />";
echo "Owner: " . $q["user_id"] . "<br />";
$timeStamp = new Timestamp($q['timestamp']);
echo $timeStamp->getDifferenceString() . "<br /><br />";
}
?>
question controller:
...
public function upvote()
{
//should retrieve question_id and then update database accordingly
//e.g. UPDATE Question SET value = value + 1 WHERE Question.id = id
}
...