首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在设置django-fmc时,管理器不可用

在设置django-fmc时,管理器不可用
EN

Stack Overflow用户
提问于 2017-01-05 18:30:05
回答 1查看 332关注 0票数 0

我正在尝试用Django (v1.97,Python v2.7.12,djangorestframework v3.3.3)设置django-fmc来处理存储注册I和向设备发送通知。我正在跟踪他们提供的教程,但它似乎不起作用。

运行本地服务器和python manage.py fcm_urls时,会收到以下错误

代码语言:javascript
复制
...
File "C:\Work\Dev\LiveTracking\Api\app\views.py", line 50, in DeviceViewSet
queryset = Device.objects.all()
File "C:\Work\Dev\LiveTracking\Api\env\lib\site-packages\django\db\models\manager.py", line 277, in __get__
self.model._meta.swapped,
AttributeError: Manager isn't available; 'fcm.Device' has been swapped for 'app.MyDevice'

目前,我不想向MyDevice模型添加额外的字段。我看遍了所有的地方,但无法修复这个错误。如果有人能对这一错误有所了解,我们将不胜感激。

下面是我的一些代码片段:

settings.py

代码语言:javascript
复制
INSTALLED_APPS = (
'fcm',
)

# Firebase Cloud Messaging Key
FCM_APIKEY = 'AIzaSyCaqHZIcaGDOpfTZUmAHEowsqD-fCtow6A'

# Location of device model
FCM_DEVICE_MODEL = 'app.MyDevice'

serializers.py

代码语言:javascript
复制
from fcm.models import Device

class DeviceSerializer(serializers.ModelSerializer):
    class Meta:
        model = Device
        fields = ('dev_id','reg_id','name','is_active')

views.py

代码语言:javascript
复制
from rest_framework import viewsets
from fcm.models import Device
from fcm.serializers import DeviceSerializer

class DeviceViewSet(viewsets.ModelViewSet):
    queryset = Device.objects.all()
    serializer_class = DeviceSerializer

urls.py

代码语言:javascript
复制
from rest_framework import routers
from fcm.views import DeviceViewSet

router = routers.DefaultRouter()
router.register(r'devices', DeviceViewSet)

urlpatterns = [
    url(r'^v1/', include(router.urls)),
]
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-01-05 19:38:07

swappable是一个无证特征,实际上应该只用于自定义User模型。自定义用户模型的文档清楚地指出,一旦使用了自定义用户模型,直接引用contrib.auth.models.User将无法工作:

如果直接引用用户(例如,通过在外键中引用用户),您的代码将无法在已将AUTH_USER_MODEL设置更改为不同用户模型的项目中工作。

您可能想阅读本章的其余部分FWIW。

长话短说:正如Daniel提到的,您很可能希望使用自己的MyDevice模型,而不是默认的Device模型。如果django-fcm文档解决了这个问题,并最终向它提供一个修补程序。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41492173

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档