私はdjango-admin-sortable2.1.2とdjango1.11を使用しています。
問題は、管理パネルから注文を変更しようとすると、注文が保存されないことです。これは、既存のモデルインスタンスが原因である可能性があると思います。
これが私の現在のコードの一部です:
// models.py
class Category(SortableMixin):
name = models.CharField(
_('name'),
max_length=150,
)
order = models.PositiveIntegerField(
default=0,
db_index=True,
)
class Meta:
verbose_name = _('category')
verbose_name_plural = _('categories')
ordering = ['order']
// admin.py
class CategoryAdmin(SortableModelAdmin):
class Meta:
model = Category
fields = (
'name',
)
sortable = 'order'
オブジェクトがすでに存在するため、デフォルト値は0に設定されています。シェルコンソールで手動で順序を変更しようとしましたが、役に立ちませんでした。オブジェクトを削除して再度作成することは避けたいです。
これを修正する方法はありますか?
admin.py
ファイル内から継承するために別のクラスを使用することにしました。
の代わりに:
from suit.admin import SortableModelAdmin
class CategoryAdmin(SortableModelAdmin):
class Meta:
model = Category
fields = (
'name',
)
sortable = 'order'
私が使う:
from adminsortable.admin import SortableAdmin
class CategoryAdmin(SortableAdmin):
class Meta:
model = Category
fields = (
'name',
)
sortable = 'order'
動作は少し異なりますが、効果は私にとって満足のいくものであり、私の問題を解決します。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加