クエリー結果が、HTMLで表示できない(涙
FLASKを使用し、MYSQLのクエリー結果をwebに表示させたいと思っていますが、webにはnoneと表示されてしまい、困っています。
すでに4日間、この問題を解決するためにネットで色々調べておりますが、なかなか解決まで至れずにおります(涙
問題があるのが、FLASK側なのか、HTML側なのかの判断すらついておりません。
クエリー結果は、ターミナル上では、正常にprintできております。
クエリー結果ではなく、FLASKからhtmlに飛ぶだけならうまく実行できるようになりました。
flask
1@app.route("/menyu") 2def select_sql(): 3 return render_template('menyu.html', m_d = m_l)
この構文が悪いのか、
html
1<p><li>{{ m_d }}</li></p>
この構文が悪いのかではないかと推察しております。
(両方の可能性が高いですが・・・)
参考までにFLASKの全文とhtmlの全文(/menyu)も添付させてもらいます
flask
1 2#!/usr/bin/python3 3 4# -- coding: utf-8 -- 5 6from flask import Flask,request,render_template 7import mysql.connector as c_data 8 9app = Flask( __name__ ) 10 11con = c_data.connect( 12 database = 'c_data', 13 user = 'root', 14 password = 'mta969696' , 15 host = 'localhost', 16 port = '3306',) 17 18# カーソルを取得して、処理終了時には自動でカーソルをcloseする。 19with con.cursor() as cursor: 20 21 # SQLの実行 22 sql = "SELECT * FROM menyus where date between\ 23 date_add( now(), interval -1 day ) and\ 24 date_add( now(), interval 6 day ) " 25 cursor.execute(sql) 26 27 # SQLの実行結果を取得 28 for m_l in cursor.fetchall(): 29 m_l = print(m_l) 30 31@app.route("/") 32def index(): 33 return render_template('index.html') 34 35@app.route("/menyu") 36def select_sql(): 37 return render_template('menyu.html', m_d = m_l) 38 39if __name__ == "__main__": 40 app.run(host="127.0.0.1", port=8080)
html
1<!DOCTYPE html> 2<html lang="ja"> 3<head> 4 <meta charset="UTF-8"> 5 <meta http-equiv="X-UA-Compatible" content="IE=edge"> 6 <meta name="viewport" content="width=device-width, initial-scale=1.0"> 7 <title>料理リスト</title> 8</head> 9<body> 10 11 <p><li>{{ m_d }}</li></p> 12 13 14</body> 15</html>
ご教授、よろしくお願いします。
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2022/05/18 01:30
退会済みユーザー
2022/05/18 02:58 編集