loaddump_Articles

This commit is contained in:
Andreas Stephanides
2017-02-08 07:14:36 +01:00
parent e1c86cdab1
commit 0c1b586962
6 changed files with 154 additions and 19 deletions

View File

@@ -3,7 +3,7 @@ from sqlalchemy.orm import relationship
from datetime import datetime
from src.database import Base,db_session
from marshmallow import Schema, fields
from marshmallow import Schema, fields, post_load
import json
import flask
@@ -31,7 +31,14 @@ class Section(Base):
if t == None or t.strip()=="":
t=self.foreign_name
return t
@classmethod
def deserialize(cls,data):
a=Section()
for c in Section.__table__.columns:
if data.has_key(c.key):
setattr(a, c.key,data[c.key])
return a
@classmethod
def find_or_create(cls, fname):
s=Section.query.filter(Section.foreign_name==fname).first()
@@ -44,6 +51,20 @@ class Section(Base):
db_session.commit()
return s
class FullSectionSchema(Schema):
id=fields.Integer()
url =fields.String()
crawlurl =fields.Integer()
#published_date=fields.DateTime()
#date=fields.DateTime(allow_none=True)
name=fields.String()
foreign_name=fields.String()
group=fields.String()
@post_load
def make_section(self, data):
return Article.deserialize(data)
class ArticleCompSchema(Schema):
id=fields.Integer()