Obtener ID de usuario actual en Flask

Soy bastante nuevo en Python (y, para ser honesto, en la progtwigción en general). Actualmente estoy trabajando en una especie de lista de tareas, donde la necesito para poner los elementos de la tarea en un curso apropiado (todo está relacionado con cosas educativas). Por lo tanto, el problema es bastante sencillo. Tengo esto como una ruta conducida por el matraz:

@app.route('/add_course', methods=('GET', 'POST')) @login_required def course(): form = forms.CourseForm() if form.validate_on_submit(): models.Course.create(teacher=g.user._get_current_object(), name=form.name.data.strip(), difficulty=form.level.data.strip(), description=form.description.data.strip()) flash("Course successfully created!", "success") return redirect(url_for('index')) return render_template('add_course.html', form=form) 

Entonces tengo esto en forms.py . Puede ver la marca inteligente que he puesto para indicar dónde está mi problema. Dice THE_PROBLEM

 def courses(): try: courses = models.Course.select(models.Course.id, models.Course.name, models.Course.difficulty).where(THE_PROBLEM) course_list = [] for course in courses: course_list.append((str(course.id), course.name + ' - ' + course.difficulty.title())) return course_list except models.DoesNotExist: return [('', 'No courses')] class ToDoForm(FlaskForm): name = StringField("What's up?", validators=[ DataRequired() ]) due_date = DateTimeField('When?', format='%Y-%m-%d %H-%M') course = SelectField('Course', choices=courses()) priority = SelectField('Priority', choices=[('high', 'High priority'), ('medium', 'Normal priority'), ('low', 'Low priority')], validators=[ DataRequired() ]) description = TextAreaField('Description') 

Entonces, sí, lo que estoy buscando es la forma de pasar el ID del propietario (profesor en este caso) que está conectado actualmente. Utilizo los courses() esta función courses() para crear una lista de tuplas para el atributo de opciones de El course campo en ToDoForm . Necesito pasar la identificación del maestro que ha iniciado sesión actualmente en esta función, para que pueda evaluar si este maestro aprobado tiene algún curso que coincida con su identificación. Intenté usar current_user._get_current_object() y lo que sea, pero solo me causó muchos errores.

Cualquier ayuda, consejo o sugerencia será apreciada. Realmente espero que lo que digo aquí (y lo que quiero lograr) sea comprensible

En caso de que alguien se encuentre con el mismo problema frustrante, la solución es bastante sencilla. Envuelva las clases externas en funciones y pase las variables requeridas como argumentos, luego úselas al contenido de su corazón. Simplemente no te olvides de devolver una instancia de la clase.