cmsplugin_news のニュース モデルを再利用して、継承モデルにいくつかのフィールドを追加しています。(ここで説明したように、複数テーブルの継承。
from cmsplugin_news.models import News
class News(News):
departments = models.ManyToManyField('department.Department', blank=True, related_name="news")
私の admin.py では、NewsAdmin を拡張して独自のフォームを設定しています。
class MyNewsAdmin(NewsAdmin):
form = NewsModelForm
私がforms.pyで定義したもの:
from news.models import News
class NewsModelForm(NewsForm):
class Meta:
model = News
widgets = {
'excerpt': CKEditorWidget(config_name='basic'),
'content': CKEditorWidget(config_name='default')
}
def _get_widget(self):
from ckeditor.widgets import CKEditorWidget
return CKEditorWidget()
シェル コンソールからオブジェクトを保存すると、モデルの継承がうまく機能するようです。しかし、django admin から MyNews オブジェクトを作成して部門にリンクしようとすると、このフィールドは保存されません。または、少なくともこの変更はどこにも表示されません
unicms-testnews=> select * from cmsplugin_news_news;
id | title | slug | excerpt | content | is_published | pub_date | created | updated | link
----+-------+------+---------+---------+--------------+------------------------+-------------------------------+-------------------------------+------
1 | dfad | dfad | | | f | 2013-09-10 13:44:46+02 | 2013-09-10 13:45:04.709556+02 | 2013-09-10 13:57:05.568696+02 |
(1 row)
unicms-testnews=> select * from news_news;
news_ptr_id
-------------
1
(1 row)
unicms-testnews=> select * from news_news_departments;
id | news_id | department_id
----+---------+---------------
1 | 1 | 1
(1 row)
何も理解できません、誰か助けてくれませんか?どうもありがとうございました!