SORU
31 Ocak 2010, Pazar


Yineleme şablonu modeli örnek alan adları ve değerleri üzerinde

Seçilen örnek alan değerleri görüntülemek için temel bir şablon, kendi isimleri ile birlikte oluşturmak için çalışıyorum. Bence sadece bir standart çıkış değerleri bu örnek tablo biçimi ile alan adı (verbose_name özellikle eğer belirtilen alan) ilk sütun ve değeri bu alanda ikinci sütun.

Örneğin, diyelim ki aşağıdaki model tanımı var ki:

class Client(Model):
    name = CharField(max_length=150)
    email = EmailField(max_length=100, verbose_name="E-mail")

Şöyle şablonu (verilen değerler ile bir örnek varsayalım): çıkış olmak isterim

Field Name      Field Value
----------      -----------
Name            Wayne Koorts
E-mail          waynes@email.com

Ulaşmak istediğim bir şablon modeli örneği ve şablonu dinamik olarak ispat etmek mümkün, böyle bir şey olması mümkün

<table>
    {% for field in fields %}
        <tr>
            <td>{{ field.name }}</td>
            <td>{{ field.value }}</td>
        </tr>
    {% endfor %}
</table>

Düzgün, "Django onaylı" bunu yapmak için bir yol? Çok yaygın bir görev gibi görünüyor, ve sık sık bu özel proje için bunu yapmak gerekir.

CEVAP
31 Ocak 2010, Pazar


model._meta.get_all_field_names() size tüm model alan adları, daha sonra kullanabilirsiniz model._meta.get_field() çalışmak için ayrıntılı isim, ve getattr(model_instance, 'field_name') get değeri modeli.

NOT: model._meta.get_all_field_names() django ile yazıldı 1.9. Bunun yerine model._meta.get_fields() modelin alanları ve field.name her alan adını almak için kullanın.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • FD2097

    FD2097

    21 HAZİRAN 2009
  • Goran Dimov

    Goran Dimov

    1 HAZİRAN 2014
  • Ralph Phillips

    Ralph Philli

    5 Aralık 2006