ruby-on-rails - RoR,链接未重定向到页面

标签 ruby-on-rails ruby devise

我正在使用 RoR 4 和 ruby​​ 2,并实现了 Devise。 我似乎无法在用户页面上找到重定向到用户 stats_path 的链接。 这是代码。

页面 Controller

    class PagesController < ApplicationController
    def opening
    end

    def user
    end

    def stats
    end
   end

路线.rb

    devise_for :users
    root "pages#opening"
    get "user" => "pages#user"
    get "stats" => "pages#stats"

在个人资料页面上,链接写法如下。

  <div class="profile-bar"> 
   <h1 style="position: relative; color:white"> <%= current_user.first_name %></h1>


   <%=link_to "Your Settings", stats_path, class: "btn btn-default btn-lg" %>
  </div>

该链接不会将用户重定向到他们的统计页面,这很奇怪,因为它昨晚正常工作,而且我不记得更改过任何内容。如有任何建议,我们将不胜感激。

这是 github 页面的链接 - https://github.com/Thefoodie/PupPics

更新:显然我还没有将代码设置为每个用户都有一个统计页面。我想我应该在深夜停止编码。我很感激任何帮助将其设置为每个用户都有一个统计页面的地方,因为我对编码还是新手。

最佳答案

可能有许多问题导致了该问题:

  1. 路线
  2. Controller 操作
  3. HTML/CSS 渲染

路线

您的路线结构应如下所示:

#config/routes.rb
devise_for :users
root "pages#opening"
resources :pages, only: [] do
    collection do
        get :user
        get :stats
    end
end

您应该在 cmd 中发布 rake paths 的结果,以便我们了解您的应用有哪些路由


Controller

澄清一下,您的 Controller 代码似乎没问题,但我们需要知道加载时的任何日志。这是一个格式正确的 Controller 布局:

#app/controllers/pages_controller.rb
class PagesController < ApplicationController
    def opening
    end

    def user
    end

    def stats
    end
end

HTML/CSS

我的直觉是你的 HTML/CSS 没有正确渲染链接

首先,您正在使用 inline styling (不好):

<h1 style="position: relative; color:white">

其次,您在链接上使用了一个类:

<%=link_to "Your Settings", stats_path %>

尝试删除类并使用rake paths操作中提供的stats_path

关于ruby-on-rails - RoR,链接未重定向到页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22091486/

相关文章:

ruby-on-rails - 与 Warden 一起进行功能测试?

ruby-on-rails - 使用 Devise 登录后没有任何反应

mysql - OSX 10.11 El Capitan 上的 Rails : Library not loaded: libmysqlclient. 18.dylib

ruby-on-rails - 开始救援未捕获错误

ruby - 我可以将 Sidekiq 用于连续流程吗?

ruby - 使用 Ruby 生成 openssl 密码

ruby-on-rails - 目录 : integration test fail

ruby-on-rails - SOA - 身份验证服务设计

ruby-on-rails - 在所有载波上传的图像上未找到生产中的载波 404

ruby-on-rails - url 助手在 Capybara 功能测试中不使用主机名