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

  • Peter Sharp

    Peter Sharp

    11 ŞUBAT 2013
  • Plugable

    Plugable

    19 Mayıs 2010
  • xdadevelopers

    xdadeveloper

    25 Aralık 2009