final test before release v1.0
This commit is contained in:
@@ -2,22 +2,21 @@ import sqlalchemy as sa
|
||||
import datetime #<- will be used to set default dates on models
|
||||
|
||||
from sqlalchemy import or_
|
||||
from ..models.blog_record import BlogRecord
|
||||
from ..models.blog_record import BlogRecord, Tags
|
||||
|
||||
|
||||
|
||||
class BlogRecordService(object):
|
||||
|
||||
@classmethod
|
||||
def all(cls, request):
|
||||
query = request.dbsession.query(BlogRecord)
|
||||
return query.order_by(sa.desc(BlogRecord.created))
|
||||
|
||||
@classmethod
|
||||
def by_criteria(cls, request, criteria):
|
||||
search = "%{}%".format(criteria)
|
||||
query = request.dbsession.query(BlogRecord).filter(or_(BlogRecord.title.like(search),
|
||||
BlogRecord.body.like(search))).all()
|
||||
query = request.dbsession.query(BlogRecord)
|
||||
if request.authenticated_userid == None:
|
||||
# if user is anonym, display only published posts
|
||||
query = query.filter(BlogRecord.status == 'publié')
|
||||
query = query.filter(or_(BlogRecord.title.like(search),
|
||||
BlogRecord.body.like(search))).all()
|
||||
return query
|
||||
|
||||
@classmethod
|
||||
@@ -29,6 +28,30 @@ class BlogRecordService(object):
|
||||
def get_last_created(cls, request):
|
||||
# gest the 10 last created posts
|
||||
query = request.dbsession.query(BlogRecord)
|
||||
if request.authenticated_userid == None:
|
||||
# if user is anonym, display only published posts
|
||||
query = query.filter(BlogRecord.status == 'publié')
|
||||
query = query.order_by(sa.desc(BlogRecord.created)).limit(10).all()
|
||||
return query
|
||||
|
||||
@classmethod
|
||||
def delete(cls, request, id):
|
||||
request.dbsession.query(BlogRecord).filter(BlogRecord.id == id).delete(synchronize_session=False)
|
||||
return
|
||||
|
||||
@classmethod
|
||||
def get_tags(cls, request):
|
||||
query = request.dbsession.query(Tags)
|
||||
query = query.order_by(Tags.tag).all()
|
||||
return query
|
||||
|
||||
@classmethod
|
||||
def get_tags_byId(cls, request, id):
|
||||
# gest the last 5 items modified
|
||||
query = request.dbsession.query(Tags).filter(Tags.id == id).first()
|
||||
return query
|
||||
|
||||
@classmethod
|
||||
def tag_delete(cls, request, id):
|
||||
request.dbsession.query(Tags).filter(Tags.id == id).delete(synchronize_session=False)
|
||||
return
|
||||
|
||||
Reference in New Issue
Block a user