dotenv
This commit is contained in:
parent
dc70b84446
commit
2fbaaf9085
4
.env.example
Normal file
4
.env.example
Normal file
@ -0,0 +1,4 @@
|
||||
SECRET_KEY=some_super_secret_key
|
||||
RECAPTCHA_PUBLIC_KEY=your_public_recaptcha_key
|
||||
RECAPTCHA_PRIVATE_KEY=your_private_recaptcha_key
|
||||
SQLALCHEMY_DATABASE_URI=db_path
|
1
.gitignore
vendored
1
.gitignore
vendored
@ -8,3 +8,4 @@
|
||||
/static/videos/
|
||||
/venv/
|
||||
/__pycache__/
|
||||
.env
|
24
README.md
24
README.md
@ -1,7 +1,7 @@
|
||||
[](https://artberry.xyz/static/Logo.svg "test")
|
||||
### booru сайт нового поколения
|
||||
|
||||
**Приватный репозиторий для разработки и тестирования новых версий веб-приложения artberry**
|
||||
**репозиторий для разработки и тестирования новых версий веб-приложения artberry**
|
||||
|
||||
------------
|
||||
|
||||
@ -21,28 +21,28 @@
|
||||
|
||||
|
||||
#### ЗАПУСК И ТЕСТИРОВАНИЕ
|
||||
**Для удобства и скорости разработки выполните следующие шаги:**
|
||||
#### Для удобства и скорости разработки выполните следующие шаги:
|
||||
|
||||
#### создайте виртуальное окружение:
|
||||
`python -m venv venv`
|
||||
- `python -m venv venv`
|
||||
|
||||
#### запустите виртуальное окружение:
|
||||
WINDOWS:
|
||||
**powershell: **` .\venv\Scripts\Activate`
|
||||
**CMD: **`venv\Scripts\activate.bat`
|
||||
*WINDOWS*:
|
||||
- **powershell:** ` .\venv\Scripts\Activate`
|
||||
- **CMD:** `venv\Scripts\activate.bat`
|
||||
|
||||
LINUX | MAC:
|
||||
`source venv/bin/activate`
|
||||
*LINUX* | *MAC*:
|
||||
- `source venv/bin/activate`
|
||||
|
||||
#### установите зависимости:
|
||||
`pip install -r requirements.txt`
|
||||
- `pip install -r requirements.txt`
|
||||
|
||||
#### запустите проект
|
||||
`python app.py` или `flask run`
|
||||
- `python app.py` или `flask run`
|
||||
|
||||
##### Для отладки в конце файла `app.py` измените:
|
||||
#### Для отладки в конце файла `app.py` измените:
|
||||
|
||||
`app.run(debug=False)` **на:** `app.run(debug=True)`
|
||||
- `app.run(debug=False)` **на:** `app.run(debug=True)`
|
||||
|
||||
------------
|
||||
|
||||
|
21
app.py
21
app.py
@ -24,16 +24,18 @@ from wtforms.validators import DataRequired, Length, EqualTo, ValidationError, R
|
||||
from wtforms import StringField, PasswordField, SubmitField
|
||||
from wtforms.validators import DataRequired, EqualTo, Regexp
|
||||
from flask_wtf import FlaskForm, RecaptchaField
|
||||
from dotenv import load_dotenv
|
||||
|
||||
app = Flask(__name__)
|
||||
csrf = CSRFProtect(app)
|
||||
load_dotenv()
|
||||
|
||||
app.config.update(
|
||||
SECRET_KEY='PASTE SOMETHING HERE',
|
||||
SECRET_KEY=os.getenv('SECRET_KEY'),
|
||||
WTF_CSRF_ENABLED=True,
|
||||
RECAPTCHA_PUBLIC_KEY="PASTE RECAPTCHA KEY HERE",
|
||||
RECAPTCHA_PRIVATE_KEY="PASTE RECAPTCHA KEY HERE",
|
||||
SQLALCHEMY_DATABASE_URI='sqlite:///artberry.db',
|
||||
RECAPTCHA_PUBLIC_KEY=os.getenv('RECAPTCHA_PUBLIC_KEY'),
|
||||
RECAPTCHA_PRIVATE_KEY=os.getenv('RECAPTCHA_PRIVATE_KEY'),
|
||||
SQLALCHEMY_DATABASE_URI=os.getenv('SQLALCHEMY_DATABASE_URI'),
|
||||
UPLOAD_FOLDER={
|
||||
'images': 'static/arts/',
|
||||
'arts': 'static/arts/',
|
||||
@ -97,9 +99,6 @@ class User(db.Model, UserMixin):
|
||||
avatar_file = db.Column(db.String(50), nullable=True)
|
||||
banner_file = db.Column(db.String(50), nullable=True)
|
||||
bio = db.Column(db.Text, nullable=True)
|
||||
show_publications = db.Column(db.Boolean, default=True)
|
||||
hide_elements = db.Column(db.Boolean, default=False)
|
||||
site_mask = db.Column(db.Boolean, default=False)
|
||||
current_item = db.Column(db.String(30), nullable=True)
|
||||
|
||||
def __repr__(self):
|
||||
@ -461,9 +460,9 @@ def image_edit(id):
|
||||
)
|
||||
|
||||
class EditVideoForm(FlaskForm):
|
||||
video_name = StringField('Title', validators=[DataRequired(), Length(max=100)], render_kw={"placeholder": "Введите название видео"})
|
||||
video_thumbnail = FileField('Thumbnail', validators=[FileAllowed(['jpg', 'jpeg', 'png', 'gif'], 'Только изображения!')])
|
||||
description = TextAreaField('Description', validators=[DataRequired(), Length(max=500)], render_kw={"placeholder": "Введите описание видео"})
|
||||
video_name = StringField('Title', validators=[DataRequired(), Length(max=100)], render_kw={"placeholder": "Enter video title"})
|
||||
video_thumbnail = FileField('Thumbnail', validators=[FileAllowed(['jpg', 'jpeg', 'png', 'gif'], 'Only images!')])
|
||||
description = TextAreaField('Description', validators=[DataRequired(), Length(max=500)], render_kw={"placeholder": "Enter video description"})
|
||||
tags = StringField('Tags', validators=[DataRequired(), Length(max=100)], render_kw={"placeholder": "Tags"})
|
||||
submit = SubmitField('Save')
|
||||
|
||||
@ -1596,4 +1595,4 @@ def buy_item(item_id):
|
||||
if __name__ == '__main__':
|
||||
with app.app_context():
|
||||
db.create_all()
|
||||
app.run(debug=True)
|
||||
app.run(debug=False)
|
Loading…
x
Reference in New Issue
Block a user