added storage_path to settings

This commit is contained in:
2021-02-09 19:37:30 +11:00
parent a2775baeeb
commit e6bc751844
3 changed files with 9 additions and 8 deletions

View File

@@ -12,9 +12,10 @@ from status import st, Status
class Settings(db.Model): class Settings(db.Model):
id = db.Column(db.Integer, db.Sequence('settings_id_seq'), primary_key=True ) id = db.Column(db.Integer, db.Sequence('settings_id_seq'), primary_key=True )
import_path = db.Column(db.String) import_path = db.Column(db.String)
storage_path = db.Column(db.String)
def __repr__(self): def __repr__(self):
return "<id: {}, import_path: {}>".format(self.id, self.import_path) return f"<id: {id}, import_path: {import_path}, storage_path: {storage_path}>"
################################################################################ ################################################################################
# Helper class that inherits a .dump() method to turn class Settings into json / useful in jinja2 # Helper class that inherits a .dump() method to turn class Settings into json / useful in jinja2
@@ -32,7 +33,8 @@ settings_schema = SettingsSchema(many=True)
################################################################################ ################################################################################
class SettingsForm(FlaskForm): class SettingsForm(FlaskForm):
id = HiddenField() id = HiddenField()
import_path = StringField('Path to import from:', [validators.DataRequired()]) import_path = StringField('Path(s) to import from:', [validators.DataRequired()])
storage_path = StringField('Path to store sorted images to:', [validators.DataRequired()])
submit = SubmitField('Save' ) submit = SubmitField('Save' )
################################################################################ ################################################################################
@@ -52,6 +54,7 @@ def settings():
if 'submit' in request.form: if 'submit' in request.form:
st.SetMessage("Successfully Updated Settings" ) st.SetMessage("Successfully Updated Settings" )
s.import_path = request.form['import_path'] s.import_path = request.form['import_path']
s.storage_path = request.form['storage_path']
db.session.commit() db.session.commit()
return redirect( '/settings' ) return redirect( '/settings' )
except SQLAlchemyError as e: except SQLAlchemyError as e:
@@ -59,7 +62,5 @@ def settings():
st.SetMessage( "<b>Failed to modify Setting:</b>&nbsp;{}".format(e.orig) ) st.SetMessage( "<b>Failed to modify Setting:</b>&nbsp;{}".format(e.orig) )
return render_template("settings.html", form=form, page_title=page_title) return render_template("settings.html", form=form, page_title=page_title)
else: else:
tmp_sets = Settings.query.all() form = SettingsForm( obj=Settings.query.first() )
sets = settings_schema.dump( tmp_sets )
form = SettingsForm(obj=tmp_sets[0])
return render_template("settings.html", form=form, page_title = page_title) return render_template("settings.html", form=form, page_title = page_title)

View File

@@ -1,6 +1,6 @@
alter database PA set timezone to 'Australia/Victoria'; alter database PA set timezone to 'Australia/Victoria';
create table SETTINGS( ID integer, IMPORT_PATH varchar, constraint PK_SETTINGS_ID primary key(ID) ); create table SETTINGS( ID integer, IMPORT_PATH varchar, STORAGE_PATH varchar, constraint PK_SETTINGS_ID primary key(ID) );
create table FILE_TYPE ( ID integer, NAME varchar(32) unique, constraint PK_FILE_TYPE_ID primary key(ID) ); create table FILE_TYPE ( ID integer, NAME varchar(32) unique, constraint PK_FILE_TYPE_ID primary key(ID) );

View File

@@ -8,8 +8,8 @@
{{field}}<br> {{field}}<br>
{% elif field.type != 'SubmitField' %} {% elif field.type != 'SubmitField' %}
<div class="form-row col-lg-12"> <div class="form-row col-lg-12">
{{ field.label( class="col-lg-2" ) }} {{ field.label( class="col-lg-3 justify-content-end" ) }}
{{ field( class="form-control col-lg-10" ) }} {{ field( class="form-control col-lg-9" ) }}
</div class="form-row col-lg-12"> </div class="form-row col-lg-12">
{% endif %} {% endif %}
{% endfor %} {% endfor %}