Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/61.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 如何防止acts_as_votable重定向或刷新?(轨道宝石)_Ruby On Rails_Url Redirection_Acts As Votable - Fatal编程技术网

Ruby on rails 如何防止acts_as_votable重定向或刷新?(轨道宝石)

Ruby on rails 如何防止acts_as_votable重定向或刷新?(轨道宝石),ruby-on-rails,url-redirection,acts-as-votable,Ruby On Rails,Url Redirection,Acts As Votable,我只是将acts_设置为_votable,它工作正常,但问题是它重定向到帖子的链接,当我添加 redirect_to :back 它刷新页面 添加了代码 这是路线 Rails.application.routes.draw do #root 'pages#index' resources :posts devise_for :users # Define root URL root 'pages#index' # Define roots for pages g

我只是将acts_设置为_votable,它工作正常,但问题是它重定向到帖子的链接,当我添加

redirect_to :back
它刷新页面

添加了代码

这是路线

Rails.application.routes.draw do
  #root 'pages#index'
  resources :posts

  devise_for :users
  # Define root URL
  root 'pages#index'

  # Define roots for pages
  get '/home' => 'pages#home'

  get '/user/:id' => 'pages#profile'

  get '/explore' => 'pages#explore'

  resources :posts do
    member do
      put "like", to: "posts#upvote"  # maybe change it to POSTS??
      put "dislike", to: "posts#downvote" # maybe change it to POSTS??
    end
    resources :comments
  end
######and post_cotroller.rb


def upvote
    @post = Post.find(params[:id])
    @post.upvote_by current_user
    redirect_to :back
  end

  def downvote
  @post = Post.find(params[:id])
  @post.downvote_by current_user
  redirect_to :back
  end
##########and index

<%= link_to like_post_path(post), method: :put, class: 'upvote' do %>
                    Upvote
                    <%= post.get_upvotes.size %>
                <% end %>

                <%= link_to dislike_post_path(post), method: :put, class: 'downvote' do %>
                    Downvote
                    <%= post.get_downvotes.size %>
                <% end %>
Rails.application.routes.draw do
#根目录“页面#索引”
资源:员额
为:用户设计
#定义根URL
根目录“页面#索引”
#定义页面的根
获取“/home”=>“主页”
获取“/user/:id”=>“页面#配置文件”
获取“/explore”=>“页面#explore”
资源:员额可以
成员do
把“喜欢”改为:“帖子#投票”#可能改为帖子??
将“不喜欢”改为:“帖子#否决票”#可能改为帖子??
结束
资源:评论
结束
######和post_cotroller.rb
投票表决
@post=post.find(参数[:id])
@当前用户的post.upvote\u
重定向到:返回
结束
def否决票
@post=post.find(参数[:id])
@post.downvote_(按当前_用户)
重定向到:返回
结束
##########和索引
向上投票
否决票

当您放置重定向时,它将发送新的请求,而不是我认为您应该使用AJAX。请分享你的代码,这样可以帮助你找到更好的方法。在你的链接上使用remote:true,并在contolleru中使用js更新我的问题