示例#1
0
def make_event():
    form = PostForm()
    if form.is_submitted():
        print("submitted")
    if form.validate():
        print("valid")

    if form.validate_on_submit():
        print(form.errors)
        print(form.image.data)
        if not form.image.data:
            print('no files has been uploaded')
            post = Post(title=form.title.data,
                        body=form.details.data,
                        user_id=current_user.id,
                        max_participant=form.max_participant.data,
                        start_time=form.start_time.data,
                        socialHours=form.socialHours.data)
        else:
            f = form.image.data
            filename = secure_filename(f.filename)
            f.save(os.path.join(current_app.config['UPLOAD_FOLDER'], filename))
            print(os.path.join(current_app.config['UPLOAD_FOLDER'], filename))
            url = url_for('auth.download_file', filename=filename)
            # filename = images.save(form.image.data)
            # print(filename)
            # url = images.path(filename)
            # print(url)
            # url = images.url(filename)
            # print(url)
            # url = url [11:]

            filedata = {"image_filename": filename, "image_url": url}
            # filedata = jsonify(filedata)
            try:
                new_Post = requests.post(
                    "http://localhost:5001/images/", json=filedata
                )  #CHANGE THIS LINK TO WHATEVER DOMAIN U HAVE FOR THE MICROSERVICE
            except requests.exceptions.ConnectionError:
                flash("image upload service unavailable")
                redirect(url_for("auth.make_event"))

            post = Post(title=form.title.data,
                        body=form.details.data,
                        user_id=current_user.id,
                        max_participant=form.max_participant.data,
                        start_time=form.start_time.data,
                        socialHours=form.socialHours.data,
                        filename=filename)
        db.session.add(post)
        db.session.commit()
        flash('We have received your application', 'success')
        return redirect(url_for('auth.index'))
    return render_template('make_event.html', user=current_user, form=form)