示例#1
0
def edit_name(id):
    """
    Edit a name
    """
    check_admin()

    add_name = False

    name = Name.query.get_or_404(id)
    form = NameForm(obj=name)
    if form.validate_on_submit():
        name.name_male = form.name_male.data
        name.script_male = form.script_male.data
        name.name_female = form.name_female.data
        name.script_female = form.script_female.data
        name.meaning = form.meaning.data
        name.first_name = form.first_name.data
        name.second_name = form.second_name.data
        name.language = form.language.data
        name.source = form.source.data
        name.confirmation = form.confirmation.data
        name.popularity = form.popularity.data
        name.note = form.note.data

        db.session.add(name)
        db.session.commit()
        flash('You have successfully edited the name.')

        # redirect to the names page
        return redirect(url_for('admin.list_names'))

    form.name_male = name.name_male
    form.script_male = name.script_male
    form.name_female = name.name_female
    form.script_female = name.script_female
    form.meaning = name.meaning
    form.first_name = name.first_name
    form.second_name = name.second_name
    form.language = name.language
    form.source = name.source
    form.confirmation = name.confirmation
    form.popularity = name.popularity
    form.note = name.note
    return render_template('admin/names/name.html',
                           add_name=add_name,
                           form=form,
                           title="Edit Name")