无法使用python软件包web.py仅显示HTML来提供本地静态CSS文件

问题描述 投票:1回答:1

我目前正在学习python课程,并且在页面加载时不会与任何CSS一起显示。

我在根目录D:\Coding\Python_Projects\Py\CodeWizard中有我的Controller.py

我的CSS文件在D:\Coding\Python_Projects\Py\CodeWizard\static\css中>

我的HTML文件在D:\Coding\Python_Projects\Py\CodeWizard\Views\Templates中>

Controller.py

import web


urls = (
    '/', 'home'
    )

render = web.template.render("Views/Templates", base="MainLayout")
app = web.application(urls, globals())


# Classes/Routes
class home:
    def GET(self):
        return render.home()


if __name__ == "__main__":
    app.run()

MainLayout.html:

$def with (page)
$var css: \\static\css\bootstrap.min.css \\static\css\bootstrap-material-design.min.css

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>CodeWizard</title>

    $if self.css:
        $for style in self.css.split():
            <link rel="stylesheet" href="$style"/>

</head>
<body>
  <div id="app">
    <nav class="navbar navbar-dark bg-primary fixed-top navbar-expand-lg">
      <div class="navbar-header">
        <a class="navbar-brand">CodeWizard</a>
      </div>

      <div class="nav navbar-nav mr-auto mt-2 mt-lg-0">
        <a class ="nav-item nav-link" href="/">Home Feed</a>
        <a class ="nav-item nav-link" href="/discover">Discover</a>
        <a class ="nav-item nav-link" href="/profile">Profile</a>
        <a class ="nav-item nav-link" href="/settings">Settings</a>
      </div>

      <div class="pull-right">
        <a href"/register" class="btn btn-raised btn-default">Register</a>
      </div>
    </div>
      $:page
  </nav>
</body>
</html>

home.html:

<br /> <br /> <br />

<div class="container">
<h1>Hello CodeWizard</h1>
</div>

如果我不对css文件位置在static前面加上多余的斜线,则会出现一些控制台错误,例如StaticApp没有属性目录,并且对于以10为底的int()来说,它是无效的文字

加上额外的斜杠,我会收到200 OK消息。当我检查页面并查看网络时,它显示CSS文件的状态为已取消。

不确定如何解决此问题。我尝试搜索了很多。我使用[

为chrome创建了快捷方式

“ C:\ Program Files(x86)\ Google \ Chrome \ Application \ chrome.exe”--allow-file-access --disable-web-security --user-data dir =“ C:\ ChromeLocalFileAccess”

这不起作用,我还尝试了css文件的直接路径,还尝试了file:///和许多其他组合。

如果有人可以帮助我,将不胜感激,因此我可以继续学习该课程并了解更多python :)预先谢谢。

我目前正在学习python课程,并且在页面加载时不会与任何CSS一起显示。我的Controller.py位于根目录D:\ Coding \ Python_Projects \ Py \ CodeWizard我的CSS ...

python html css static web.py
1个回答
0
投票

[这是在Python 3.7环境中运行的web.py的问题。此问题已由此pull request修复。

已修复,您的路径不应以\\开头:

© www.soinside.com 2019 - 2024. All rights reserved.