MongoDB
 sql >> Teknologi Basis Data >  >> NoSQL >> MongoDB

Flask &MongoDB - Untuk Loop tidak berfungsi

Anda mungkin ingin menggunakan find_one() alih-alih find() yang mengembalikan kursor ke dokumen yang cocok dengan kriteria. find_one() mengembalikan satu dokumen yang kemudian dapat digunakan dalam kamus, sebagai ganti kursor:

example = mongo.db.example
doc = example.find_one()

details = { 'name' : doc['name'], 'lastname' : doc['lastname'] }

return render_template('blabla.html', details=details)

Atau

example = mongo.db.example
details = example.find_one({}, {'name':1, 'lastname':1})

return render_template('blabla.html', details=details)

Dan template Anda akan menjadi

<tr>
    <td>{{ details['name'] }}</td>
    <td>{{ details['lastname'] }}</td>
</tr>

Jika Anda ingin mengulangi seluruh koleksi dan mengembalikan daftar jika dokumen hanya dengan name dan lastname bidang, maka Anda harus menggunakan find() method.Jika Anda memiliki kumpulan data yang relatif kecil, kode berikut akan mengubah seluruh kumpulan hasil (Kursor) menjadi daftar (semuanya ditarik ke dalam memori):

example = mongo.db.example
details = list(example.find({}, {'name': 1, 'lastname': 1}))

return render_template('blabla.html', details=details)

Kemudian ulangi daftar di template Anda

{% for doc in details}
<tr>
    <td>{{ doc['name'] }}</td>
    <td>{{ doc['lastname'] }}</td>
</tr>
{% endfor %}


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Cara menggunakan kembali koneksi MongoDB di Go

  2. Cadangan MongoDB sebagai teks daripada biner untuk kontrol sumber

  3. Setel kata sandi ke database mongo meteor

  4. Menjalankan MongoDB dengan Manajer Operasi

  5. MongoDB:locale::facet::_S_create_c_nama lokal tidak valid