zoukankan      html  css  js  c++  java
  • python--web.py使用

    web.py 是一个轻量级Python web框架。

    下面我将使用web.py框架,创建一个简单的html页面示例。

    1.项目的目录结构如下所示:

    exweb2
      uniqueenv
      app.py
      templates

          base.html

          hello_form.html
                     index.html


    2.创建网站根目录exweb2
    mkdir exweb2


    3.在网站根目录下创建一个虚拟环境
    cd exweb2
    virtualenv uniqueenv

    4.安装flask
    uniqueenv/bin/pip install lpthw.web

    5.web.py使用,app.py代码如下

    #-*- coding: UTF-8 -*-                                                           
    import web 
    
    urls =(
            '/','Index'
    )
    
    app = web.application(urls,globals())
     #base为基础模板页
    render = web.template.render('templates/',base="base")
    
    class Index(object):
             #get方式提交,若url参数不为空,直接跳转到显示界面,否则跳转到输入信息界面
            def GET(self):
                    form = web.input(name="",greet="")
                    if form.greet!="" and form.name!="":
                            greeting="%s,%s"%(form.greet,form.name)
                            return render.index(greeting=greeting)
                    return render.hello_form()
            #post方式提交表单,
            def POST(self):
                    form = web.input(name="Nobody",greet="Hello")
                    greeting="%s,%s"%(form.greet,form.name)
                    return render.index(greeting=greeting)
    if __name__ == "__main__":
            app.run() 

    6.接着创建模板页,模板放在templates文件夹下.

    mkdir templates

    首先创建一个基础模板页 base.html

    $def with (content)                                                              
    <html>                                                                               
            <head>
                    <title>
                    </title>
            </head>
            <body>
                    $:content
            </body>
    </html>

    输入信息页 hello_form.html

    <h1>Fill out this form</h1>                                                      
    <form action="/" method="POST">
    A Greeting:<input type="text" name="greet">
    <br/>
    Your Name:<input type="text" name="name">
    <br/>
    <input type="submit">
    </form>

    显示信息页 index.html

    $def with (greeting)                                                             
    
    $if greeting: 
            I just wanted to say <em style="color: green; font-size: 2em;">$greeting</em>. 
    $else: 
            <em>Hello</em>, world!

     7.运行:uniqueenv/bin/python app.py

    注意运行的时候要使用虚拟目录中的python解释器

    8.结果:

    (1)Get方式

    (2)Post方式

  • 相关阅读:
    难道真的是RedBook错了?
    用一个土办法证明RedBook的错误
    Md5 Loader Demo
    simple shadow mapping
    又遇到让人疑惑的问题
    [洛谷P1037][题解]产生数
    [洛谷P1279][题解]字串距离
    [洛谷P1122][题解]最大子树和
    [洛谷P1144][题解]最短路计数
    Vue 之 Data
  • 原文地址:https://www.cnblogs.com/shijingjing07/p/5336886.html
Copyright © 2011-2022 走看看