📜  urisina (1)

📅  最后修改于: 2023-12-03 14:48:14.112000             🧑  作者: Mango

Urisina介绍

Urisina是一款基于Python开发的Web框架,主要用于构建Web应用程序。它采用了MVC架构,提供了路由、模板、ORM等常用功能,同时还支持WebSocket以及RESTful API等特性。

安装

使用pip可以轻松安装Urisina:

pip install urisina
快速开始

Urisina让Web开发变得简单易上手,下面是一个快速开始的例子:

from urisina import App, route

app = App()

@route("/")
def index(request):
    return "Hello Urisina!"

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

在浏览器中访问http://localhost:5000/,即可看到Hello Urisina!的输出。

路由

Urisina支持使用route装饰器来定义路由,例如:

@route("/users/<int:user_id>")
def user_detail(request, user_id):
    # ...

其中<int:user_id>表示接受一个名为user_id的整型参数。

模板

Urisina支持使用Jinja2模板引擎来渲染HTML页面,例如:

from urisina import App, render_template

app = App()

@app.route("/")
def index(request):
    return render_template("index.html", title="Home")

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

其中render_template函数需要指定模板的相对路径以及传递给模板的参数。

ORM

Urisina内置了ORM功能,可以轻松操作数据库,例如:

from urisina import Model, Integer, String, datetime

class User(Model):
    id = Integer(primary_key=True)
    name = String()
    created_at = datetime(auto_now_add=True)

user = User(name="Bob")
user.save()

users = User.objects.filter(name="Bob")
for user in users:
    print(user.name)
WebSocket和RESTful API

除了传统的Web应用开发,Urisina还支持WebSocket和RESTful API等高级功能。例如,使用WebSocket实现实时聊天室:

from urisina import App, websocket

app = App()

@websocket("/chat")
def chat(ws):
    while True:
        message = ws.receive()
        ws.send("You said: " + message)

if __name == "__main__":
    app.run(debug=True)

在客户端通过WebSocket连接到ws://localhost:5000/chat即可与服务器实时通信。

总结

Urisina是一个功能丰富的Web框架,支持路由、模板、ORM、WebSocket、RESTful API等特性,使得Web开发变得更加简单易上手。如果您正在寻找Python Web框架,Urisina值得一试。