Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Bagaimana cara mengembalikan data dari kueri MySQL di aplikasi Flask?

Gunakan jsonify bawaan Flask fungsi, karena sudah diperluas untuk bekerja dengan tanggal :

from Flask import jsonify

@app.route('/temp')
def temp():
    # Load database results
    # and then ...
    return jsonify(data=cur.fetchall())

Data akan dikembalikan sebagai objek dengan satu kunci (data ) yang berisi larik baris (yang akan direpresentasikan sebagai larik atau objek tergantung pada fetchall apa mengembalikan baris sebagai).

Jika Anda perlu membuat lebih banyak jenis serial (seperti dalam kasus Anda, Anda mendapatkan kembali date daripada datetime contoh, Anda harus mengganti json_encoder Flask properti dengan subkelas JSONEncoder yang tahu bagaimana menangani tipe Anda:

class SpecializedJSONEncoder(JSONEncoder):
    def default(o):
        if isinstance(o, date):
            return date.strftime("%Y-%m-%d")
        else:
            super(SpecializedJSONEncoder, self).default(o)

Dan kemudian Anda dapat mengaturnya di Flask contoh:

app.json_encoder = SpecializedJSONEncoder

Anda sekarang dapat menangani date s serta datetime s.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Mengapa Anda tidak dapat meneruskan fungsi MYSQL ke dalam pernyataan PDO yang disiapkan?

  2. metode tidak terdefinisi saat menggunakan form_for dalam metode pengontrol baru

  3. Layar putih kematian PHP setiap saat. Apa yang saya lakukan salah?

  4. Urutkan data (urutkan berdasarkan) sebelum dikelompokkan berdasarkan di mysql

  5. Bagaimana saya bisa mengatur ulang perilaku pengguna 'root' default di MySQL 5.7