データベースから取得したデータを絞り込んで、その結果をhtmlに表示しようとしています。
その結果を、htmlに出力したら下記の様に、1列のデータになってしまし、とても見づらくなってしまいました。
実際のページ 社員管理システム 検索条件 code shimei furigana section flag nyusha_date taisha_date 119 古橋敏郎 フルハシトシロウ 第三営業部 0 1989-02-18 2017-12-13 172 古谷香穂 フルヤカホ 総務部 0 1979-03-06 1979-08-13
これをターミナルなどにプリントされるような下記のような表示にしたいのですが、可能でしょうか?
理想 code shimei furigana section flag nyusha_date taisha_date 119 古橋敏郎 フルハシトシロウ 第三営業部 0 1989-02-18 2017-12-13 172 古谷香穂 フルヤカホ 総務部 0 1979-03-06 1979-08-13
自分で考えながら、試してみたのですが、どれも結局1行のデータになってしまいます。よろしくお願いいたします。
python
1import mysql.connector as mydb 2import pandas as pd 3from flask import Flask, render_template, request, redirect 4from flask_sqlalchemy import SQLAlchemy 5 6#データベースとの接続 7conn = mydb.connect( 8 host='localhost', 9 port='3306', 10 user='root', 11 password='root', 12 database='shain' 13) 14 15sql = "select * from shain" 16 17#テーブルからデータを取得してデータフレームに 18df_shain_list = pd.read_sql(sql, conn) 19 20shain_dict = {} 21 22app = Flask(__name__) 23 24#db = SQLAlchemy(app) 25 26@app.route('/', methods=['GET', 'POST']) 27def search(): 28 return render_template('search.html') 29 30@app.route('/result', methods=['POST']) 31def result(): 32 search_name = request.form['keyword'] 33 n = 0 34 result = df_shain_list[df_shain_list['shimei'].str.contains(search_name)] #データを抽出 35 result_noindx = result.to_string(index=False) 36 for index, row in result.iterrows(): 37 shain_dict = result_noindx 38 n = n + 1 39 return render_template('result.html', shain_dict = shain_dict) 40 41 42if __name__ == "__main__": 43 app.run(debug=True)
base.html <!DOCTYPE html> <html lang="ja"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>社員検索</title> {% block head %}{% endblock %} </head> <body> <h3>社員管理システム</h3> <form method="post" action="/result"> 検索条件 <input type="text" name="keyword"><br> <input type="submit" value="検索する"> </form> {% block body %}{% endblock %} </body> </html>
result.html <!DOCTYPE html> <html lang="ja"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>社員検索</title> {% block head %}{% endblock %} </head> <body> <h3>社員管理システム</h3> <form method="post" action="/result"> 検索条件 <input type="text" name="keyword"><br> <input type="submit" value="検索する"> </form> {% block body %}{% endblock %} </body> </html>
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/01/01 10:51
2021/01/01 11:01 編集
2021/01/01 11:20
2021/01/01 11:29
2021/01/01 11:46
2021/01/01 13:36