Fix flake8

This commit is contained in:
RemiZOffAlex
2020-08-17 19:57:37 +03:00
parent a9736c09fe
commit ae5c629782
46 changed files with 229 additions and 336 deletions

View File

@@ -1,7 +1,5 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
CONFIG = 'config.demo' CONFIG = 'config.demo'

View File

@@ -1,11 +1,8 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
import os import os
import sys
# Конфигурация # Конфигурация
DEBUG = True DEBUG = True

View File

@@ -5,6 +5,6 @@ server {
error_log /var/log/nginx/myapp-error.log info; error_log /var/log/nginx/myapp-error.log info;
location / { location / {
include uwsgi_params; include uwsgi_params;
uwsgi_pass unix:///var/run/uwsgi/myapp.sock; uwsgi_pass unix:///run/uwsgi/myapp.sock;
} }
} }

View File

@@ -1,8 +1,6 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
import config import config
import logging import logging
@@ -28,6 +26,7 @@ app.logger.addHandler(handler)
from . import lib, models from . import lib, models
@app.context_processor @app.context_processor
def inject_data(): def inject_data():
result = {} result = {}
@@ -38,29 +37,30 @@ def inject_data():
return result return result
@app.teardown_appcontext @app.teardown_appcontext
def shutdown_session(exception=None): def shutdown_session(exception=None):
models.db_session.close_all() models.db_session.close_all()
# API # API
from . import ns_api from . import ns_api # noqa F401
# Авторизация # Авторизация
from . import ns_login from . import ns_login # noqa F401
# Заметки # Заметки
from . import ns_note from . import ns_note # noqa F401
# Статьи # Статьи
from . import ns_page from . import ns_page # noqa F401
# Профиль # Профиль
from . import ns_profile from . import ns_profile # noqa F401
# Метки # Метки
from . import ns_tag from . import ns_tag # noqa F401
# Пользователи # Пользователи
from . import ns_user from . import ns_user # noqa F401
from . import views from . import views # noqa F401

View File

@@ -2,9 +2,7 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'http://remizoffalex.ru'
import datetime import datetime

View File

@@ -1,10 +0,0 @@
__author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
from .users import LoginForm
from .page import PageEdit
__all__ = []

View File

@@ -1,16 +0,0 @@
__author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
from wtforms import (
Form,
TextField,
TextAreaField
)
class PageEdit(Form):
title = TextField('Заголовок')
text = TextAreaField('Текст')

View File

@@ -1,12 +0,0 @@
__author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
from wtforms import Form, TextField, PasswordField
class LoginForm(Form):
username = TextField('Имя пользователя')
password = PasswordField('Пароль')

View File

@@ -1,12 +1,10 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
from .pagination import Pagination, getpage from .pagination import Pagination, getpage # noqa F401
from .passwd import pwgen, get_hash_password from .passwd import pwgen, get_hash_password # noqa F401
from .storage import gettree, gethashtree from .storage import gettree, gethashtree # noqa F401
from .info import get_user from .info import get_user # noqa F401
__all__ = [] __all__ = []

View File

@@ -1,15 +1,13 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
from flask import session, request from flask import session
from .. import app, models from .. import models
def get_user(): def get_user():
""" """Получить текущего пользователя
Получить текущего пользователя
""" """
result = None result = None
if 'user_id' in session: if 'user_id' in session:

View File

@@ -1,8 +1,6 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
from math import ceil from math import ceil

View File

@@ -1,16 +1,14 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
import uuid import uuid
import random import random
import hashlib import hashlib
def pwgen(length=15, hex=False): def pwgen(length=15, hex=False):
""" """Генератор пароля
Генератор пароля
""" """
keylist = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ' keylist = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
if hex: if hex:
@@ -22,9 +20,9 @@ def pwgen(length=15, hex=False):
password.append(a_char) password.append(a_char)
return ''.join(password) return ''.join(password)
def get_hash_password(password, salt=None): def get_hash_password(password, salt=None):
""" """Получить хеш пароля SHA-512
Получить хеш пароля SHA-512
""" """
if salt is None: if salt is None:
salt = uuid.uuid4().hex salt = uuid.uuid4().hex

View File

@@ -1,8 +1,7 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
def gettree(number, count=3): def gettree(number, count=3):
""" """
@@ -16,6 +15,7 @@ def gettree(number, count=3):
result.append(newline[i*count:i*count+count]) result.append(newline[i*count:i*count+count])
return result return result
def gethashtree(hash, count=3): def gethashtree(hash, count=3):
""" """
Сформировать дерево каталогов Сформировать дерево каталогов

View File

@@ -1,8 +1,6 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
from sqlalchemy import create_engine from sqlalchemy import create_engine
from sqlalchemy.orm import scoped_session, sessionmaker from sqlalchemy.orm import scoped_session, sessionmaker
@@ -25,16 +23,16 @@ Base = declarative_base()
Base.query = db_session.query_property() Base.query = db_session.query_property()
# Пользователи # Пользователи
from .users import User from .users import User # noqa F401
# Метки # Метки
from .tag import Tag from .tag import Tag # noqa F401
# Статьи # Статьи
from .page import Page, TagPage from .page import Page, TagPage # noqa F401
# Заметки # Заметки
from .note import Note, TagNote from .note import Note, TagNote # noqa F401
Base.metadata.create_all(engine) Base.metadata.create_all(engine)

View File

@@ -1,11 +1,9 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'http://remizoffalex.ru'
import datetime import datetime
from sqlalchemy import Column, Boolean, Integer, ForeignKey, String, DateTime from sqlalchemy import Column, Integer, ForeignKey, String, DateTime
from sqlalchemy.orm import relationship from sqlalchemy.orm import relationship
from . import Base from . import Base
@@ -31,9 +29,8 @@ class Note(Base):
) )
tags = relationship("TagNote", primaryjoin="Note.id==TagNote.note_id") tags = relationship("TagNote", primaryjoin="Note.id==TagNote.note_id")
def __init__(self, user, title): def __init__(self, user, title):
assert type(user).__name__=='User', app.logger.info('Не передан объект User') assert type(user).__name__ == 'User', 'Не передан объект User'
self.user_id = user.id self.user_id = user.id
self.title = title self.title = title
self.created = datetime.datetime.now() self.created = datetime.datetime.now()
@@ -56,12 +53,20 @@ class TagNote(Base):
created = Column(DateTime) # Дата создания created = Column(DateTime) # Дата создания
# Связи # Связи
note = relationship("Note", primaryjoin="TagNote.note_id==Note.id", uselist=False) note = relationship(
tag = relationship("Tag", primaryjoin="TagNote.tag_id==Tag.id", uselist=False) "Note",
primaryjoin="TagNote.note_id==Note.id",
uselist=False
)
tag = relationship(
"Tag",
primaryjoin="TagNote.tag_id==Tag.id",
uselist=False
)
def __init__(self, note, tag): def __init__(self, note, tag):
assert type(note).__name__=='Note', app.logger.info('Не передан объект Note') assert type(note).__name__ == 'Note', 'Не передан объект Note'
assert type(tag).__name__=='Tag', app.logger.info('Не передан объект Tag') assert type(tag).__name__ == 'Tag', 'Не передан объект Tag'
self.note_id = note.id self.note_id = note.id
self.tag_id = tag.id self.tag_id = tag.id
self.created = datetime.datetime.now() self.created = datetime.datetime.now()

View File

@@ -1,19 +1,16 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'http://remizoffalex.ru'
import datetime import datetime
from sqlalchemy import Column, Boolean, Integer, ForeignKey, String, DateTime from sqlalchemy import Column, Integer, ForeignKey, String, DateTime
from sqlalchemy.orm import relationship from sqlalchemy.orm import relationship
from . import Base from . import Base
class Page(Base): class Page(Base):
""" """Страницы
Страницы
""" """
__tablename__ = "page" __tablename__ = "page"
@@ -32,9 +29,8 @@ class Page(Base):
) )
tags = relationship("TagPage", primaryjoin="Page.id==TagPage.page_id") tags = relationship("TagPage", primaryjoin="Page.id==TagPage.page_id")
def __init__(self, user, title): def __init__(self, user, title):
assert type(user).__name__=='User', app.logger.info('Не передан объект User') assert type(user).__name__ == 'User', 'Не передан объект User'
self.user_id = user.id self.user_id = user.id
self.title = title self.title = title
self.created = datetime.datetime.now() self.created = datetime.datetime.now()
@@ -57,12 +53,20 @@ class TagPage(Base):
created = Column(DateTime) # Дата создания created = Column(DateTime) # Дата создания
# Связи # Связи
page = relationship("Page", primaryjoin="TagPage.page_id==Page.id", uselist=False) page = relationship(
tag = relationship("Tag", primaryjoin="TagPage.tag_id==Tag.id", uselist=False) "Page",
primaryjoin="TagPage.page_id==Page.id",
uselist=False
)
tag = relationship(
"Tag",
primaryjoin="TagPage.tag_id==Tag.id",
uselist=False
)
def __init__(self, page, tag): def __init__(self, page, tag):
assert type(page).__name__=='Page', app.logger.info('Не передан объект Page') assert type(page).__name__ == 'Page', 'Не передан объект Page'
assert type(tag).__name__=='Tag', app.logger.info('Не передан объект Tag') assert type(tag).__name__ == 'Tag', 'Не передан объект Tag'
self.page_id = page.id self.page_id = page.id
self.tag_id = tag.id self.tag_id = tag.id
self.created = datetime.datetime.now() self.created = datetime.datetime.now()

View File

@@ -6,21 +6,16 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'http://remizoffalex.ru'
import datetime from sqlalchemy import Column, Integer, String
from sqlalchemy import Column, Integer, ForeignKey, String, DateTime
from sqlalchemy.orm import relationship from sqlalchemy.orm import relationship
from . import Base from . import Base
from .. import app
class Tag(Base): class Tag(Base):
""" """Теги, метки
Теги, метки
""" """
__tablename__ = "tag" __tablename__ = "tag"
@@ -37,7 +32,6 @@ class Tag(Base):
return "<Tag('%s')>" % (self.name) return "<Tag('%s')>" % (self.name)
def as_dict(self): def as_dict(self):
""" """Возвращает словарь
Возвращает словарь
""" """
return {c.name: getattr(self, c.name) for c in self.__table__.columns} return {c.name: getattr(self, c.name) for c in self.__table__.columns}

View File

@@ -1,12 +1,9 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
import datetime import datetime
from sqlalchemy import ( from sqlalchemy import (
Table,
Column, Column,
Boolean, Boolean,
Integer, Integer,
@@ -20,8 +17,7 @@ from . import Base
class User(Base): class User(Base):
""" """Пользователи
Пользователи
""" """
__tablename__ = "user" __tablename__ = "user"
@@ -31,11 +27,16 @@ class User(Base):
disabled = Column(Boolean, default=True) disabled = Column(Boolean, default=True)
created = Column(DateTime) created = Column(DateTime)
# Связи
pages = relationship("Page", primaryjoin="Page.user_id==User.id")
def __init__(self, name): def __init__(self, name):
self.name = name self.name = name
self.created = datetime.datetime.utcnow() self.created = datetime.datetime.utcnow()
def as_dict(self): def as_dict(self):
return {c.name: getattr(self, c.name) return {
c.name: getattr(self, c.name)
for c in self.__table__.columns for c in self.__table__.columns
if c.name!='password'} if c.name != 'password'
}

View File

@@ -1,8 +1,6 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
from functools import wraps from functools import wraps
from flask_jsonrpc import JSONRPC from flask_jsonrpc import JSONRPC
@@ -10,6 +8,7 @@ from flask import session
from .. import app, models from .. import app, models
def login_required(func): def login_required(func):
@wraps(func) @wraps(func)
def decorated_function(*args, **kwargs): def decorated_function(*args, **kwargs):
@@ -29,9 +28,10 @@ def login_required(func):
raise Exception('Необходима авторизация') raise Exception('Необходима авторизация')
return decorated_function return decorated_function
jsonrpc = JSONRPC(app, '/api') jsonrpc = JSONRPC(app, '/api')
from . import ( from . import ( # noqa F401
login, login,
note, note,
page, page,

View File

@@ -2,10 +2,7 @@ __author__ = 'RemiZOffAlex'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru/' __url__ = 'https://remizoffalex.ru/'
import string
from flask import session from flask import session
from flask_jsonrpc.exceptions import InvalidRequestError
from . import jsonrpc from . import jsonrpc
from .. import app, lib, models from .. import app, lib, models

View File

@@ -1,6 +1,5 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
from . import jsonrpc, login_required from . import jsonrpc, login_required
from .. import app, lib, models from .. import app, lib, models

View File

@@ -1,6 +1,5 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
from . import jsonrpc, login_required from . import jsonrpc, login_required
from .. import app, lib, models from .. import app, lib, models

View File

@@ -1,11 +1,9 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
from . import ( from . import ( # noqa F401
note, note,
page, page,
tag tag

View File

@@ -1,8 +1,6 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
from .. import jsonrpc, login_required from .. import jsonrpc, login_required
from ... import app, lib, models from ... import app, lib, models

View File

@@ -1,8 +1,6 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
from .. import jsonrpc, login_required from .. import jsonrpc, login_required
from ... import app, lib, models from ... import app, lib, models

View File

@@ -1,11 +1,9 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
from .. import jsonrpc, login_required from .. import jsonrpc, login_required
from ... import app, lib, models from ... import models
@jsonrpc.method('tag.add') @jsonrpc.method('tag.add')

View File

@@ -1,10 +1,8 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
from . import jsonrpc, login_required from . import jsonrpc
from .. import app, lib, models from .. import app, lib, models

View File

@@ -1,18 +1,18 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
import os import os
import jinja2 import jinja2
from . import views from . import views # noqa F401
from .. import app from .. import app
my_loader = jinja2.ChoiceLoader([ my_loader = jinja2.ChoiceLoader([
app.jinja_loader, app.jinja_loader,
jinja2.FileSystemLoader(os.path.dirname(os.path.abspath(__file__)) + "/templates"), jinja2.FileSystemLoader(
os.path.dirname(os.path.abspath(__file__)) + "/templates"
),
]) ])
app.jinja_loader = my_loader app.jinja_loader = my_loader

View File

@@ -1,18 +1,15 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
from flask import render_template, escape, request, session, redirect from flask import render_template, session, redirect
from .. import app, lib, models from .. import app
@app.route('/login') @app.route('/login')
def login(): def login():
""" """Вход
Логин
""" """
pagedata = {} pagedata = {}
body = render_template('login.html', pagedata=pagedata) body = render_template('login.html', pagedata=pagedata)
@@ -21,6 +18,8 @@ def login():
@app.route('/logout') @app.route('/logout')
def logout(): def logout():
"""Выход
"""
session.pop('logged_in', None) session.pop('logged_in', None)
session.pop('user_id', None) session.pop('user_id', None)
return redirect("/", code=302) return redirect("/", code=302)

View File

@@ -1,18 +1,18 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
import os import os
import jinja2 import jinja2
from . import views from . import views # noqa F401
from .. import app from .. import app
my_loader = jinja2.ChoiceLoader([ my_loader = jinja2.ChoiceLoader([
app.jinja_loader, app.jinja_loader,
jinja2.FileSystemLoader(os.path.dirname(os.path.abspath(__file__)) + "/templates"), jinja2.FileSystemLoader(
os.path.dirname(os.path.abspath(__file__)) + "/templates"
),
]) ])
app.jinja_loader = my_loader app.jinja_loader = my_loader

View File

@@ -1,12 +1,10 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
from flask import render_template, escape, request, session, redirect from flask import abort, render_template
from .. import app, lib, models from .. import app, models
@app.route('/note/<int:id>') @app.route('/note/<int:id>')

View File

@@ -1,18 +1,18 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
import os import os
import jinja2 import jinja2
from . import routes from . import routes # noqa F401
from .. import app from .. import app
my_loader = jinja2.ChoiceLoader([ my_loader = jinja2.ChoiceLoader([
app.jinja_loader, app.jinja_loader,
jinja2.FileSystemLoader(os.path.dirname(os.path.abspath(__file__)) + "/templates"), jinja2.FileSystemLoader(
os.path.dirname(os.path.abspath(__file__)) + "/templates"
),
]) ])
app.jinja_loader = my_loader app.jinja_loader = my_loader

View File

@@ -6,7 +6,6 @@ from flask import abort
from . import views_user, views_guest from . import views_user, views_guest
from .. import app, lib from .. import app, lib
from ..decorators import login_required
@app.route('/page/<int:id>') @app.route('/page/<int:id>')

View File

@@ -2,12 +2,9 @@ __author__ = 'RemiZOffAlex'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru/' __url__ = 'https://remizoffalex.ru/'
from flask import ( from flask import abort, render_template
abort,
render_template
)
from .. import app, lib, models from .. import app, models
def pages(page): def pages(page):
@@ -25,8 +22,7 @@ def pages(page):
def page_id(id): def page_id(id):
""" """Документ
Документ
""" """
page = models.db_session.query( page = models.db_session.query(
models.Page models.Page

View File

@@ -2,18 +2,9 @@ __author__ = 'RemiZOffAlex'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru/' __url__ = 'https://remizoffalex.ru/'
import datetime from flask import abort, render_template
from flask import ( from .. import app, models
abort,
render_template,
request,
redirect,
escape,
session
)
from .. import app, lib, models
def pages(page): def pages(page):
@@ -33,10 +24,8 @@ def pages(page):
def page_id(id): def page_id(id):
"""Статья
""" """
Статья
"""
pagedata = {}
page = models.db_session.query( page = models.db_session.query(
models.Page models.Page
).filter( ).filter(
@@ -44,6 +33,10 @@ def page_id(id):
).first() ).first()
if page is None: if page is None:
abort(404) abort(404)
pagedata = {}
pagedata['title'] = '{} - {}'.format(page.title, app.config['TITLE'])
pagedata['page'] = page.as_dict() pagedata['page'] = page.as_dict()
pagedata['page']['user'] = page.user.as_dict() pagedata['page']['user'] = page.user.as_dict()
@@ -60,32 +53,8 @@ def page_id(id):
return body return body
def page_id(id):
"""Документ"""
page = models.db_session.query(
models.Page
).filter(
models.Page.id==id
).first()
if page is None:
abort(404)
pagedata = {}
pagedata['title'] = '{} - {}'.format(page.title, app.config['TITLE'])
pagedata['page'] = page.as_dict()
pagedata['page']['user'] = page.user.as_dict()
pagedata['page']['tags'] = []
for tagLink in page.tags:
pagedata['page']['tags'].append(tagLink.tag.as_dict())
body = render_template('user/page.html', pagedata=pagedata)
return body
def page_edit(id): def page_edit(id):
""" """Редактирование статьи
Редактирование статьи
""" """
pagedata = {'title': app.config['TITLE']} pagedata = {'title': app.config['TITLE']}
page = models.db_session.query( page = models.db_session.query(
@@ -102,7 +71,8 @@ def page_edit(id):
def page_add(): def page_add():
"""Добавление нового документа""" """Добавление нового документа
"""
pagedata = {} pagedata = {}
pagedata['title'] = 'Новый документ - ' + app.config['TITLE'] pagedata['title'] = 'Новый документ - ' + app.config['TITLE']
body = render_template('user/page_add.html', pagedata=pagedata) body = render_template('user/page_add.html', pagedata=pagedata)

View File

@@ -1,18 +1,18 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'http://remizoffalex.ru'
import os import os
import jinja2 import jinja2
from . import views from . import views # noqa F401
from .. import app from .. import app
my_loader = jinja2.ChoiceLoader([ my_loader = jinja2.ChoiceLoader([
app.jinja_loader, app.jinja_loader,
jinja2.FileSystemLoader(os.path.dirname(os.path.abspath(__file__)) + "/templates"), jinja2.FileSystemLoader(
os.path.dirname(os.path.abspath(__file__)) + "/templates"
),
]) ])
app.jinja_loader = my_loader app.jinja_loader = my_loader

View File

@@ -1,8 +1,6 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'http://remizoffalex.ru'
from flask import render_template from flask import render_template

View File

@@ -1,18 +1,18 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
import os import os
import jinja2 import jinja2
from . import routes from . import routes # noqa F401
from .. import app from .. import app
my_loader = jinja2.ChoiceLoader([ my_loader = jinja2.ChoiceLoader([
app.jinja_loader, app.jinja_loader,
jinja2.FileSystemLoader(os.path.dirname(os.path.abspath(__file__)) + "/templates"), jinja2.FileSystemLoader(
os.path.dirname(os.path.abspath(__file__)) + "/templates"
),
]) ])
app.jinja_loader = my_loader app.jinja_loader = my_loader

View File

@@ -1,10 +1,8 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
from flask import render_template from flask import abort, render_template
from .. import app, models from .. import app, models

View File

@@ -1,10 +1,8 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
from flask import render_template from flask import abort, render_template
from .. import app, models from .. import app, models

View File

@@ -1,18 +1,18 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
import os import os
import jinja2 import jinja2
from . import views from . import views # noqa F401
from .. import app from .. import app
my_loader = jinja2.ChoiceLoader([ my_loader = jinja2.ChoiceLoader([
app.jinja_loader, app.jinja_loader,
jinja2.FileSystemLoader(os.path.dirname(os.path.abspath(__file__)) + "/templates"), jinja2.FileSystemLoader(
os.path.dirname(os.path.abspath(__file__)) + "/templates"
),
]) ])
app.jinja_loader = my_loader app.jinja_loader = my_loader

View File

@@ -1,10 +1,8 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
from flask import render_template from flask import abort, render_template
from .. import app, models from .. import app, models

View File

@@ -1,13 +1,9 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
from myapp import app from myapp import app
from flask import Flask, render_template, request, Response from flask import render_template, Response
from . import forms, models
@app.route('/') @app.route('/')
@@ -30,7 +26,12 @@ def robots_txt():
def error_missing(exception): def error_missing(exception):
pagedata = {} pagedata = {}
error_message = "Не судьба..." error_message = "Не судьба..."
return render_template("error.html", error_code=404, error_message=error_message, pagedata=pagedata), 404 return render_template(
"error.html",
error_code=404,
error_message=error_message,
pagedata=pagedata
), 404
# noinspection PyUnusedLocal # noinspection PyUnusedLocal
@@ -38,7 +39,12 @@ def error_missing(exception):
def error_unauthorized(exception): def error_unauthorized(exception):
pagedata = {} pagedata = {}
error_message = "У вас нет прав" error_message = "У вас нет прав"
return render_template("error.html", error_code=403, error_message=error_message, pagedata=pagedata), 403 return render_template(
"error.html",
error_code=403,
error_message=error_message,
pagedata=pagedata
), 403
# noinspection PyUnusedLocal # noinspection PyUnusedLocal
@@ -46,4 +52,9 @@ def error_unauthorized(exception):
def error_crash(exception): def error_crash(exception):
pagedata = {} pagedata = {}
error_message = "Вот незадача..." error_message = "Вот незадача..."
return render_template("error.html", error_code=500, error_message=error_message, pagedata=pagedata), 500 return render_template(
"error.html",
error_code=500,
error_message=error_message,
pagedata=pagedata
), 500

2
run.py
View File

@@ -2,9 +2,7 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
from myapp import app as application from myapp import app as application

View File

@@ -2,9 +2,7 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
import os import os
import sys import sys

View File

@@ -2,8 +2,6 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
from myapp import app as application from myapp import app as application # noqa F401