0

複数のユーザーにメールを送信する必要があるアプリに取り組んでいます。別の管理ページからユーザーが選択され、「ニュースレターの送信」アクションでニュースレター オブジェクトが作成され、ニュースレターの管理編集ページに HttpResponseRedirect が返されます。私がやりたいのは、受信者用の複数の選択リストを作成する代わりに (リストにはアドレスが多すぎて役に立たないため)、参照用に選択された電子メールアドレスをリストする div が必要なだけです。編集する任意の機能。それ、どうやったら出来るの?

これが関連する理由はわかりませんが、ニュースレターのモデルは次のようになります

class Newsletter(models.Model):                                                                                                                                                                                     
    owner = models.ForeignKey(User, related_name='+', blank=False)                                                                                                                                                  
    sent = models.BooleanField(default=False)                                                                                                                                                                       
    date_created = models.DateTimeField(auto_now_add=True)                                                                                                                                                          
    date_sent = models.DateTimeField(null=True)                                                                                                                                                                     
    subject = models.CharField(max_length=255)                                                                                                                                                                      
    content = HTMLField()                                                                                                                                                                                           
    recipients = models.ManyToManyField(Email, related_name='+')                                                                                                                                                    

class Meta:                                                                                                                                                                                                     
    ordering = ['date_sent', 'date_created']                                              

ビューはありません。私が望むのは、受信者をdjango管理者の編集不可能な電子メールアドレスのリストとして表示することです。メールモデルにはメールが多すぎるため、ウィジェットを無効にしたくありません。この特定のニュースレター用に選択されたものを管理編集ページのどこかにリストしたいだけです。

4

1 に答える 1

0

最も簡単な方法: 読み取り専用フィールド。

class MyAdmin(admin.ModelAdmin):
   readonly_fields = ('_recipients', )
   fields = ('_recipients',)

   def _recipients(self, obj):
     return u', '.join([x.email for x in obj.recipients.all()])
   _recipient
于 2012-12-07T02:13:07.040 に答える