gpt4 book ai didi

ruby-on-rails-3 - 如何在 Rails 3 应用程序中添加一个 '+1' 链接,单击该链接会使 Upvotes 值增加 1?

转载 作者:行者123 更新时间:2023-12-04 07:04:02 26 4
gpt4 key购买 nike

我是编程新手。

我生成了一个 Ideas 脚手架。该模型具有以下字段:描述(字符串)、赞成票(整数)、反对票(整数)。

ideas_controller.rb 中的所有正常操作都有效 - 索引、显示、新建、编辑、创建、更新、销毁。

我不会告诉您我尝试执行以下操作的方法,而只是问:

如何在“显示”、“编辑”、“销毁”链接旁边添加一个“+1”链接,单击该链接会使该想法的赞成票值增加 1?

提前致谢。

编辑(在“Skydreamer”的帮助下,我想通了!)

我将 routes.rb 调整为:

   resources :ideas do
member do
get 'upvote'
end
end

我在 ideas index.html.erb 中添加了以下内容:

<td><%= link_to '+1', upvote_idea_path(idea) %></td>

注意:如果您不包含(idea),您将收到如下错误:

No route matches {:action=>"upvote", :controller=>"ideas"}

我将以下内容添加到 ideas_controller.rb:

    def upvote
@idea = Idea.find (params[:id])
@idea.upvotes = @idea.upvotes + 1
@idea.save
redirect_to(ideas_url)
end

最佳答案

在接下来的几行中,我会说 upvote,但对于 downvote 也是一样的。

首先,创建一个成员路由 upvote,然后您可以使用 upvote_idea_path 从您的显示 View 链接到新操作。

其次,在 Controller 中创建一个操作upvote,将投票计数增加 1,您就完成了。就这样。

关于ruby-on-rails-3 - 如何在 Rails 3 应用程序中添加一个 '+1' 链接,单击该链接会使 Upvotes 值增加 1?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7085509/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com