sinatra-authentication gem 不寻找正确的视图?

发布于 2024-10-20 15:36:27 字数 732 浏览 1 评论 0原文

我正在尝试在 sinatra 和 mongoid 中为自己编写一个小型博客引擎,并尝试使用 sinatra-authentication gem 进行登录/退出。

我已经让 sinatra、mongoid 和 haml 都正常工作,但是当我访问任何 sinatra 身份验证页面时,nginx 会抛出内部服务器错误。

这是我收到的错误,

Errno::ENOENT - No such file or directory -     /opt/nginx/html/raptor.patrickarlt.com/views/layout.haml:

您可以在此处查看我的所有文件,包括我的 nginx 错误日志中的更多内容 https://gist。 github.com/854156

get '/' 工作确认 Sinatra 正在工作
获取“/haml”工作确认 haml 正在工作
get '/private' 重定向到 '/login' 确认 sinatra 身份验证正在工作
获取“/login”内部服务器错误

Ruby 1.9.2
Nginx 0.8.54
乘客3.0.2

I am attempting to write a small blogging engine for myself in sinatra and mongoid and am trying to use the sinatra-authentication gem to do login/out.

I have gotten sinatra, mongoid, and haml all working but when I visit any sinatra-authentication page nginx throws an internal server error.

this is the error I am getting

Errno::ENOENT - No such file or directory -     /opt/nginx/html/raptor.patrickarlt.com/views/layout.haml:

you can see all my files including more from my nginx error log here https://gist.github.com/854156

get '/' works confirming Sinatra is working
get '/haml' works confirming haml is working
get '/private' redirects to '/login' confirming sinatra-authentication is working
get '/login' internal server error

Ruby 1.9.2
Nginx 0.8.54
Passenger 3.0.2

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

兰花执着 2024-10-27 15:36:27

sinatra-authentication 假设您正在使用布局,除非当前请求是 XMLHttpRequest(请参阅 代码)。您有两个选择:

  1. views/layout.haml 中为您的应用程序创建布局,如 http://sinatra-book.gittr.com/#templates
  2. 重写 sinatra-authentication 的 use_layout? 方法,如下所示:

    模块 Sinatra
      模块助手
        def use_layout?
          错误的
        结尾
      结尾
    结尾
    

sinatra-authentication assumes you're using a layout unless the current request is an XMLHttpRequest (see the code). You have two options:

  1. Create a layout for your application in views/layout.haml as described a couple paragraphs down at http://sinatra-book.gittr.com/#templates
  2. Override sinatra-authentication's use_layout? method as such:

    module Sinatra
      module Helpers
        def use_layout?
          false
        end
      end
    end
    
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文