models.py
· 686 B · Python
Raw
import json
import peewee as pw
from datetime import datetime
db = pw.SqliteDatabase('opencdn.db')
class JSONField(pw.TextField):
def db_value(self, value):
return json.dumps(value, ensure_ascii=False)
def python_value(self, value):
if value is not None:
return json.loads(value)
return None
class BaseModel(pw.Model):
class Meta:
database = db
id = pw.IntegerField(primary_key=True)
created_at = pw.DateTimeField(default=datetime.now)
updated_at = pw.DateTimeField(default=datetime.now)
def save(self, *args, **kwargs):
self.updated_at = datetime.now()
return super().save(*args, **kwargs)
| 1 | import json |
| 2 | import peewee as pw |
| 3 | from datetime import datetime |
| 4 | |
| 5 | db = pw.SqliteDatabase('opencdn.db') |
| 6 | |
| 7 | |
| 8 | class JSONField(pw.TextField): |
| 9 | def db_value(self, value): |
| 10 | return json.dumps(value, ensure_ascii=False) |
| 11 | |
| 12 | def python_value(self, value): |
| 13 | if value is not None: |
| 14 | return json.loads(value) |
| 15 | return None |
| 16 | |
| 17 | |
| 18 | class BaseModel(pw.Model): |
| 19 | class Meta: |
| 20 | database = db |
| 21 | |
| 22 | id = pw.IntegerField(primary_key=True) |
| 23 | created_at = pw.DateTimeField(default=datetime.now) |
| 24 | updated_at = pw.DateTimeField(default=datetime.now) |
| 25 | |
| 26 | def save(self, *args, **kwargs): |
| 27 | self.updated_at = datetime.now() |
| 28 | return super().save(*args, **kwargs) |