万年素人からHackerへの道

万年素人がHackerになれるまで殴り書きするぜ。

  • ・資産運用おすすめ
    10万円は1000円くらい利益
    資産運用ブログ アセマネ
    • ・寄付お願いします
      YENTEN:YYzNPzdsZWqr5THWAdMrKDj7GT8ietDc2W
      BitZenny:ZfpUbVya8MWQkjjGJMjA7P9pPkqaLnwPWH
      c0ban:8KG95GXdEquNpPW8xJAJf7nn5kbimQ5wj1
      Skycoin:KMqcn7x8REwwzMHPi9fV9fbNwdofYAWKRo

    Djangoのxadminでのテキストエリアを小さく

    xadminのテキストエリアを小さくしたい。 普通のadminと同様にできる。

    Views — Django Xadmin 1.0.0 documentation

    from django.forms import Textarea
    from django.db import models
    class HogeModelAdmin(object):
        formfield_overrides = {
            models.TextField: {'widget': Textarea(attrs={'rows':4, 'cols':40})},
        }

    'rows':4は縦で、'cols':40は横です。

    しかし、これではModel内の全部のTextFiledが影響されてしまう。

    Django -- Override One Specific Field Widget in Admin

    Django — Override One Specific Field Widget in Admin | YUJI TOMITA

    ここを見たら、

    class OrderForm(forms.ModelForm):
        class Meta:
            model = Hoge
            widgets = {
                'columnname': forms.Textarea(attrs={'rows':4, 'cols':40}),
            }
    
    class HogeAdmin(object):
        form = OrderForm

    のように columnnameというカラムに対してだけ適用ができた。 formに対してOrderFormを指定する。