私は2つのモデルを持っています:顧客(ユーザー= m.ForeignKey(User、related_name = "customers"))とUserAdmin(クラスUserAdmin(NestedModelAdmin 、DjangoUserAdmin))。 Django:IndexError/admin/auth/user/list indexの範囲外
def orders_url(self):
return format_html(u"<a href='/admin/order/order/?q={0}'>Orders</a>", self.user.first_name)
アプリ/管理/ user_admin.pyで
私はこのコードを持っている:私はこのコードを書いたアプリ/ models.pyに:私は、すべてのユーザーの注文へのリンクを生成し、ユーザーフィールドに追加したいfrom myproject.customer.models import Customer
def orders_url(self, user):
customer = user.customers.all()[0]
return customer.orders_url()
私は/ admin/auth/user /?q = Nickなどのユーザーを検索しようとすると、すべてうまくいって、Nickの注文へのリンクが生成されますが、/ admin/auth /ユーザー/、このエラーが表示されます。IndexError at/admin/auth/user/ リストのインデックスが範囲外です。次のコードに トレースバックリンク:
path_to_project/customer/admin/user_admin.py in orders_url
customer = user.customers.all()[0]
▼ Local vars
Variable Value
self <myproject.customer.admin.user_admin.UserAdmin object at 0xa7e788c>
user <User: >
は、そのメッセージを忘れ:
Error during template rendering
In template /home/vagrant/venv/local/lib/python2.7/site-packages/django/contrib/admin/templates/admin/change_list.html, error at line 91
list index out of range
91 {% result_list cl %}
を、私はそれを変更できますか?
あなたと一緒に作業しているユーザーオブジェクトには顧客がいません – Sayse
私もこのユーザーが空であることがわかりますが、このユーザーとユーザーをどこに追加できるのか分かりません。 –