访问 Sinatra Rackup 中的 public 文件夹
Accessing public folder in Sinatra Rackup
我有一个使用 rackup 和 Sinatra::Base(模块化应用程序)的小型 Sinatra 应用程序。我的视图文件夹可以访问,但是我的 public 文件夹具有样式表和 java 脚本根本无法访问,我 运行 我的应用程序使用命令 rerun rackup
。我已经尝试了很多关于堆栈溢出的东西,但没有什么能解决问题
controllers/applicatoin_controller.rb
class ApplicationController < Sinatra::Base
set :views, Proc.new {File.join(root, "../views/")}
set :public_folder , Proc.new {File.join(root,"../public")}
enable :static
end
layout.erb
<link rel="stylesheets" href="main.css">
应用程序文件夹结构
.
|-- app.rb
|-- config
| |-- database.yml
| `-- environment.rb
|-- config.ru
|-- controllers
| |-- application_controller.rb
| |-- ratings_controller.rb
| |-- recipies_controller.rb
| `-- users_controller.rb
|-- Gemfile
|-- Gemfile.lock
|-- helpers
|-- lib
| `-- sinatra
| `-- auth.rb
|-- models
| |-- category.rb
| |-- rating.rb
| |-- recipie.rb
| |-- sub_category.rb
| |-- text.rb
| `-- user.rb
|-- public
| |-- images
| |-- javascripts
| | |-- holder.min.js
| | `-- ratings.js
| `-- stylesheets
| `-- main.css
|-- rakefile.rb
|
`-- views
|-- auth_layout.erb
|-- create_recipie.erb
|-- edit_recipie.erb
|-- index.erb
|-- layout.erb
|-- login.erb
|-- not_found.erb
|-- recipie.erb
|-- recipies.erb
`-- signup.erb
您应该在其前面加上 stylesheets
: href='stylesheets/main.css'
。它不会在 public 目录中递归地查找和解析静态文件。
另外 rel
您 link 标签的属性应该是 stylesheet
而不是 stylesheets
.
我有一个使用 rackup 和 Sinatra::Base(模块化应用程序)的小型 Sinatra 应用程序。我的视图文件夹可以访问,但是我的 public 文件夹具有样式表和 java 脚本根本无法访问,我 运行 我的应用程序使用命令 rerun rackup
。我已经尝试了很多关于堆栈溢出的东西,但没有什么能解决问题
controllers/applicatoin_controller.rb
class ApplicationController < Sinatra::Base
set :views, Proc.new {File.join(root, "../views/")}
set :public_folder , Proc.new {File.join(root,"../public")}
enable :static
end
layout.erb
<link rel="stylesheets" href="main.css">
应用程序文件夹结构
.
|-- app.rb
|-- config
| |-- database.yml
| `-- environment.rb
|-- config.ru
|-- controllers
| |-- application_controller.rb
| |-- ratings_controller.rb
| |-- recipies_controller.rb
| `-- users_controller.rb
|-- Gemfile
|-- Gemfile.lock
|-- helpers
|-- lib
| `-- sinatra
| `-- auth.rb
|-- models
| |-- category.rb
| |-- rating.rb
| |-- recipie.rb
| |-- sub_category.rb
| |-- text.rb
| `-- user.rb
|-- public
| |-- images
| |-- javascripts
| | |-- holder.min.js
| | `-- ratings.js
| `-- stylesheets
| `-- main.css
|-- rakefile.rb
|
`-- views
|-- auth_layout.erb
|-- create_recipie.erb
|-- edit_recipie.erb
|-- index.erb
|-- layout.erb
|-- login.erb
|-- not_found.erb
|-- recipie.erb
|-- recipies.erb
`-- signup.erb
您应该在其前面加上 stylesheets
: href='stylesheets/main.css'
。它不会在 public 目录中递归地查找和解析静态文件。
另外 rel
您 link 标签的属性应该是 stylesheet
而不是 stylesheets
.