Ric*_*sta 1 ruby ruby-on-rails
我正在Rails中创建一个站点,我想在Stackoverflow中添加一个类似于这里的投票上/下系统.
谁能建议怎么做?我知道我会将每个投票输入数据库,但我的意思是,我如何编写投票按钮?我会用什么,任何人都可以帮助我.Ajax不是必需的,但它会很好.
我打算尝试使用POST命令并执行类似的操作,
<form name="input" action="/grinders" method="POST">
<input type="hidden" name="id" value="<%=h grinder.id %>">
<input type="hidden" name="vote" value="up">
<input type="submit" value="Vote" />
</form>
Run Code Online (Sandbox Code Playgroud)
但是,我得到了一个真实性令牌错误,老实说,我不知道如何使用表单助手.
有这样一张votes桌子:
[PK] vote_id, vote_type (up/down), [FK] post_id, [FK] user_id, time [optional]
Run Code Online (Sandbox Code Playgroud)
还要score在posts表中添加一个字段
然后你可以让投票按钮访问如下链接:/vote/post_id/type/,例如:/vote/14098/up.这可以使用或不使用Ajax来完成.
当调用投票操作时,检查用户之前是否已对该帖子投票 - 如果是,则拒绝它.如果没有,请在votes表中创建一个包含相关值的行,并更新表中的score字段posts.