Change corpus file model to save metadata.

This commit is contained in:
Patrick Jentsch
2019-10-28 15:46:25 +01:00
parent 8a4a7577a0
commit f4c7af02ad
6 changed files with 111 additions and 37 deletions

View File

@ -7,10 +7,17 @@ from wtforms.validators import DataRequired, Length, NumberRange
class CreateCorpusForm(FlaskForm):
description = StringField('Description',
validators=[DataRequired(), Length(1, 64)])
files = MultipleFileField('Files', validators=[DataRequired()])
submit = SubmitField('Create corpus')
title = StringField('Title', validators=[DataRequired(), Length(1, 32)])
class AddCorpusFileForm(FlaskForm):
author = StringField('Author', validators=[DataRequired(), Length(1, 64)])
files = MultipleFileField('Files', validators=[DataRequired()])
publishing_year = IntegerField('Publishing year', validators=[DataRequired()])
submit = SubmitField()
title = StringField('Title', validators=[DataRequired(), Length(1, 64)])
def validate_files(form, field):
for file in field.data:
if not file.filename.lower().endswith('.vrt'):

View File

@ -3,7 +3,7 @@ from flask import (abort, current_app, flash, redirect, request,
render_template, url_for, send_from_directory)
from flask_login import current_user, login_required
from . import main
from .forms import CreateCorpusForm, QueryForm
from .forms import AddCorpusFileForm, CreateCorpusForm, QueryForm
from .. import db
from ..models import Corpus, CorpusFile, Job, JobInput, JobResult
from werkzeug.utils import secure_filename
@ -24,7 +24,12 @@ def corpus(corpus_id):
if not (corpus.creator == current_user
or current_user.is_administrator()):
abort(403)
add_corpus_file_form = AddCorpusFileForm()
if add_corpus_file_form.validate_on_submit():
flash('Corpus file added!')
return redirect(url_for('main.corpus', corpus_id=corpus_id))
return render_template('main/corpora/corpus.html.j2',
add_corpus_file_form=add_corpus_file_form,
corpus=corpus,
title='Corpus')