Skip to content

Commit 37c27fc

Browse files
authored
Merge pull request hack4impact#162 from anselal/refactor_admin_blueprint
👕 Refactor blueprints
2 parents 2b675a8 + 4481b93 commit 37c27fc

File tree

12 files changed

+87
-52
lines changed

12 files changed

+87
-52
lines changed

app/__init__.py

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,16 @@
11
import os
2+
23
from flask import Flask
3-
from flask_mail import Mail
4-
from flask_sqlalchemy import SQLAlchemy
5-
from flask_login import LoginManager
64
from flask_assets import Environment
7-
from flask_wtf import CsrfProtect
85
from flask_compress import Compress
6+
from flask_login import LoginManager
7+
from flask_mail import Mail
98
from flask_rq import RQ
9+
from flask_sqlalchemy import SQLAlchemy
10+
from flask_wtf import CsrfProtect
1011

12+
from app.assets import app_css, app_js, vendor_css, vendor_js
1113
from config import config
12-
from .assets import app_css, app_js, vendor_css, vendor_js
1314

1415
basedir = os.path.abspath(os.path.dirname(__file__))
1516

app/account/__init__.py

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1 @@
1-
from flask import Blueprint
2-
3-
account = Blueprint('account', __name__)
4-
5-
from . import views # noqa
1+
from app.account.views import account

app/account/forms.py

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,16 @@
11
from flask import url_for
22
from flask_wtf import Form
33
from wtforms import ValidationError
4-
from wtforms.fields import (BooleanField, PasswordField, StringField,
5-
SubmitField)
4+
from wtforms.fields import (
5+
BooleanField,
6+
PasswordField,
7+
StringField,
8+
SubmitField,
9+
)
610
from wtforms.fields.html5 import EmailField
711
from wtforms.validators import Email, EqualTo, InputRequired, Length
812

9-
from ..models import User
13+
from app.models import User
1014

1115

1216
class LoginForm(Form):
@@ -43,7 +47,7 @@ def validate_email(self, field):
4347
if User.query.filter_by(email=field.data).first():
4448
raise ValidationError('Email already registered. (Did you mean to '
4549
'<a href="{}">log in</a> instead?)'.format(
46-
url_for('account.login')))
50+
url_for('account.login')))
4751

4852

4953
class RequestResetPasswordForm(Form):

app/account/views.py

Lines changed: 28 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,33 @@
1-
from flask import flash, redirect, render_template, request, url_for
2-
from flask_login import current_user, login_required, login_user, logout_user
1+
from flask import (
2+
Blueprint,
3+
flash,
4+
redirect,
5+
render_template,
6+
request,
7+
url_for,
8+
)
9+
from flask_login import (
10+
current_user,
11+
login_required,
12+
login_user,
13+
logout_user,
14+
)
315
from flask_rq import get_queue
416

5-
from . import account
6-
from .. import db
7-
from ..email import send_email
8-
from ..models import User
9-
from .forms import (ChangeEmailForm, ChangePasswordForm, CreatePasswordForm,
10-
LoginForm, RegistrationForm, RequestResetPasswordForm,
11-
ResetPasswordForm)
17+
from app import db
18+
from app.account.forms import (
19+
ChangeEmailForm,
20+
ChangePasswordForm,
21+
CreatePasswordForm,
22+
LoginForm,
23+
RegistrationForm,
24+
RequestResetPasswordForm,
25+
ResetPasswordForm,
26+
)
27+
from app.email import send_email
28+
from app.models import User
29+
30+
account = Blueprint('account', __name__)
1231

1332

1433
@account.route('/login', methods=['GET', 'POST'])

app/admin/__init__.py

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1 @@
1-
from flask import Blueprint
2-
3-
admin = Blueprint('admin', __name__)
4-
5-
from . import views # noqa
1+
from app.admin.views import admin # noqa

app/admin/forms.py

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,21 @@
11
from flask_wtf import Form
22
from wtforms import ValidationError
33
from wtforms.ext.sqlalchemy.fields import QuerySelectField
4-
from wtforms.fields import PasswordField, StringField, SubmitField
4+
from wtforms.fields import (
5+
PasswordField,
6+
StringField,
7+
SubmitField,
8+
)
59
from wtforms.fields.html5 import EmailField
6-
from wtforms.validators import Email, EqualTo, InputRequired, Length
10+
from wtforms.validators import (
11+
Email,
12+
EqualTo,
13+
InputRequired,
14+
Length,
15+
)
716

8-
from .. import db
9-
from ..models import Role, User
17+
from app import db
18+
from app.models import Role, User
1019

1120

1221
class ChangeUserEmailForm(Form):

app/admin/views.py

Lines changed: 21 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,27 @@
1-
from flask import abort, flash, redirect, render_template, request, url_for
1+
from flask import (
2+
Blueprint,
3+
abort,
4+
flash,
5+
redirect,
6+
render_template,
7+
request,
8+
url_for,
9+
)
210
from flask_login import current_user, login_required
311
from flask_rq import get_queue
412

5-
from . import admin
6-
from .. import db
7-
from ..decorators import admin_required
8-
from ..email import send_email
9-
from ..models import EditableHTML, Role, User
10-
from .forms import (ChangeAccountTypeForm, ChangeUserEmailForm, InviteUserForm,
11-
NewUserForm)
13+
from app import db
14+
from app.admin.forms import (
15+
ChangeAccountTypeForm,
16+
ChangeUserEmailForm,
17+
InviteUserForm,
18+
NewUserForm,
19+
)
20+
from app.decorators import admin_required
21+
from app.email import send_email
22+
from app.models import EditableHTML, Role, User
23+
24+
admin = Blueprint('admin', __name__)
1225

1326

1427
@admin.route('/')

app/decorators.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
from flask import abort
44
from flask_login import current_user
55

6-
from .models import Permission
6+
from app.models import Permission
77

88

99
def permission_required(permission):

app/email.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,7 @@
44
from flask_mail import Message
55

66
from app import create_app
7-
8-
from . import mail
7+
from app import mail
98

109

1110
def send_email(recipient, subject, template, **kwargs):

app/main/__init__.py

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,2 @@
1-
from flask import Blueprint
2-
3-
main = Blueprint('main', __name__)
4-
5-
from . import views, errors # noqa
1+
from app.main import errors # noqa
2+
from app.main.views import main

0 commit comments

Comments
 (0)