新的Django 1.8提供了HstoreField。 我已经使用 HstoreField 数据扩展了用户模型
**#models.py**
from django.contrib.postgres.fields import HStoreField
from django.contrib.auth.models import AbstractUser
class Profile(AbstractUser):
data = HStoreField(blank=True)
def __unicode__(self):
return self.email
**#admin.py**
from django.contrib import admin
from django.contrib.auth.admin import UserAdmin
@admin.register(Profile)
class ProfileAdmin(UserAdmin):
pass
现在,我如何将 HstoreField 添加到我的管理界面?
最佳答案
确保 django.contrib.postgres
已添加到您安装的应用程序中:
INSTALLED_APPS = (
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'django.contrib.postgres',
'yourapp',
)
另请注意,根据 Django 文档,Psycopg2 2.5 or higher is required .
确认上述内容后,您应该能够在数据
字段中输入以下内容:
{"a": "1", "b": "2"}
我在 PostGres 9.1 中遇到了一些问题,无法立即使用 HStore,因此您可能需要在数据库上运行以下命令:
创建扩展 hstore;
关于python - Django 1.8 HstoreField 管理界面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29476008/