1xuan / webgo

A micro web framework

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

webgo

Webgo is a micro web framework.

It addresses a couple of problems:

  • Mapping URL to objects

  • Loading static files

  • Performing DB operations through ORM

Requirements

Python 3.8+

Installation

$ pip3 install webgo

Quickstart

There is a simple implementation in demo directory, You can imitate it to build your own.

run

$ webgo demo

and access: http://localhost:8080

note: the work directory must be the same as project

More

Project Structure

You must construct project structure like this:

And import all .py files in __init__.py

.
├── __init__.py
├── app.py
├── model.py
├── static
│   ├── css
│   │   └── demo.css
│   └── js
│       └── demo.js
└── templates
    └── index.html

Object Mapping

You can map any URL to any function.

from webgo.handler import get

@get('/')
def hello(request):
    return 'hello world'

ORM

You can save and query data through sqlite by orm.

>>> from webgo.orm import IntegerField, TextField, Model
>>> class Demo(Model): 
>>>     age = IntegerField('age') 
>>>     name = TextField('name') 

>>> Model.create_table()                                                
Table Demo created

>>> one = Demo(age=12, name='Bob')                                          

>>> one.age = 15                                                           

>>>  one.save()                                                             

>>>  one.pk                                                                 
>>>  1

>>>  one.age                                                               
>>>  15

>>> Demo(age=10, name='Tom').save()

>>> recset = Demo.objects.query()

>>> print(recset)
<Demo RecorcdSet (1,2)>

About

A micro web framework

License:MIT License


Languages

Language:Python 100.0%