Exemplo n.º 1
0
def scrapp(request):
    session = create_db_session()
    session.query(Employee).delete()
    session.query(Desigination).delete()
    session.commit()
    for data in employee_details:
        empl = Employee(first_name=data['first_name'],
                        last_name=data['last_name'],
                        other_names=data['other_names'],
                        date_of_joining=data['date_of_joining'],
                        status_id=data['status_id'])
        session.add(empl)

    for data in employee_designation:
        empl_des = Desigination(employee_id=data['employee_id'],
                                title=data['title'])
        session.add(empl_des)
    session.commit()
    session.close()
    return render_template('index.html')
Exemplo n.º 2
0
def table(request):
    url = url_for("table")

    # подключаем необходимые таблицы для списков в jinja2
    regions = Region.query.all()
    queries = Users.query.all()

    # инициируем и преобразуем для чтетия выгрузку таблицы Users
    db = sqlite3.connect('data.db', uri=True)
    c = db.cursor()
    script = """
            SELECT * FROM Users
            """
    c.execute(script)
    columns = [desc[0] for desc in c.description]
    data = c.fetchall()
    df = pd.DataFrame(list(data), columns=columns)
    writer = pd.ExcelWriter(basedir2 + r'/database.xlsx')
    df.to_excel(writer, sheet_name='0', index=False)
    writer.save()
    replace_id_loc2(basedir2, r'/database.xlsx')

    # получаем данные из формы далее записывает данные в таблицу users
    if request.method == "POST":
        # запись в db полученой информации из формы
        try:
            firstName = request.form['firstName']
            middleName = request.form['middleName']
            lastName = request.form['lastName']
            phone = request.form['phone']
            email = request.form['email']
            city = request.form['city']
            rel_city = City.query.filter(City.name == city).first()
            try:
                done_db = Users(
                    firstName=firstName,
                    middleName=middleName,
                    lastName=lastName,
                    phone=phone,
                    email=email,
                    region_id=rel_city.region_id,
                    city_id=rel_city.id,
                )

                session.add(done_db)
                session.commit()
                return redirect(url_for("table"))
            except Exception as e:
                # обработаем исключение если город и регин не заполнен выведим пустую ячейку
                try:
                    error = e.args[0].split()
                    error_str = error[5].replace("'", "")
                    if error_str == 'region_id' or error_str == 'city_id':
                        done_db = Users(
                            firstName=firstName,
                            middleName=middleName,
                            lastName=lastName,
                            phone=phone,
                            email=email,
                            region_id=None,
                            city_id=None,
                        )
                        session.add(done_db)
                        session.commit()
                finally:
                    return redirect(url_for("table"))
        except Exception as e:
            try:
                return e
            finally:
                # сереализуем post запрос в json для ajax
                if request.form['region']:
                    region = request.form['region']
                    records = [
                        z.to_json()
                        for z in Region.query.filter_by(name_region=region)
                    ]
                    cont = json.dumps(records[0], sort_keys=True)
                    return Response(cont, content_type="application/json")
    return render_template("table.html",
                           url=url,
                           queries=queries,
                           regions=regions)
Exemplo n.º 3
0
def home(request):
    url = url_for("home")
    return render_template("home.html", url=url)
Exemplo n.º 4
0
def not_found(request):
    return render_template("not_found.html")
Exemplo n.º 5
0
def homepage(request):
    return render_template('index.html', sentdata=[])
Exemplo n.º 6
0
def test_render_template():
    response = render_template("template.html", emisorName="Test")
    assert response.find("Test") >= 0