gpt4 book ai didi

ruby - HAML layout.haml 和 Sinatra 不使用 url 参数

转载 作者:太空宇宙 更新时间:2023-11-03 17:37:40 24 4
gpt4 key购买 nike

我的 index.haml 工作正常,例如:

get '/about' do
haml :about
end

但是如果我尝试使用如下用户参数:

get ':user/add' do
haml :add_item
end

layout.haml 被忽略。

我试图使用我的 View 文件夹中的子目录来让它工作,例如:

/view/contact/add.haml

虽然它插入=yield 内容,但不会显示layout.haml css 样式等。

所以我认为使用子目录是问题所在,并将我所有的 hamls 放在基本 View 目录中。然而,似乎任何使用像 get ':user/add' 这样的 url 参数的东西都不包含 layout.haml 无论如何。目前这是我做的测试:

myapp.rb

require "rubygems"
require "sinatra"
require "haml"
require "data_mapper"
require "pony"

get '/' do #works fine
haml :index
end

get '/:user_id/dashboard' do #recognizes the content but ignores layout.haml
haml :dashboard
end

我的 layout.haml 看起来像这样:

views/layout.haml

!!!
%html
%head
%title Testing haml and sinatra
%link(rel="stylesheet" href="css/style.css")
%body
#wrapper
#header
%h1 HAML Test Template
%h2 Made with Sinatra and HAML!

#navigation
%h1 Navigation

#sidebar
%h1 Sidebar

#content
=yield

#footer
%p
This is the footer.

任何帮助将不胜感激。谢谢。

我不知道这是否重要,但我正在使用 shotgun 进行开发

最佳答案

我通过在 layout.haml 中使用以下内容修复了此问题:

layout.haml

代替:

%link(rel="stylesheet" href="css/style.css")

已替换(固定版本):

%link(rel="stylesheet" href="/css/style.css")

工作正常!希望这对某人有所帮助。

关于ruby - HAML layout.haml 和 Sinatra 不使用 url 参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11599972/

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