Je suis aux prises avec un problème d'importation que je n'arrive pas à résoudre.
J'ai une application django (je n'utilise pas django-rq à cause de certains problèmes dont je ne me souviens pas) et j'utilise bien rq depuis un certain temps maintenant. J'ai ajouté un autre module à mon application Django et j'ai commencé à recevoir importError. J'ai confirmé qu'il n'y a pas de problèmes d'importation circulaire. Je soupçonne qu'il y a un problème dans l'espace de noms et je veux donc expliquer un peu. J'ai aussi l'impression que les messages d'erreur ne sont pas révélateurs des vrais problèmes.
J'ai un module appelé quicken
module qui a from sprint.models import SmsRecord
. Il n'y a eu aucun problème. J'ai ensuite créé un module appelé waze
qui a également from sprint.models import SmsRecord
, mais maintenant j'obtiens un UnpickleError: (u'Could not unpickle', ImportError('cannot import name SmsRecord',))
. Voici le retraçage complet .
Pour voir ce qui se passe, j'ai inclus un import waze
dans mon worker.py pour voir la cause de l'erreur, et je vois un message d'erreur légèrement meilleur
Version utilisée : rq==0.5.6, redis==2.10.5 et django==1.8.4 le tout en environnement osx.
Cela ne semble pas être un bogue dans RQ mais dans la façon dont votre environnement est configuré. Je ne connais pas la façon dont votre code est structuré, donc je ne peux pas fournir beaucoup d'informations.
J'ai rencontré ce même problème et j'ai pu le résoudre en m'assurant que j'exécutais rq worker
dans le répertoire où le module requis pouvait être importé.
la mise à niveau vers rq==0.10.0 a corrigé cette erreur pour moi
Avoir ce problème maintenant sur 1.1.0 😬
On dirait que cette exception a été supprimée dans https://github.com/rq/rq/commit/e1cbc3736c55d7a72be121a170d1b8c811619dc2#diff -27817b1a9be843cacb4ebeb20393c486
Commentaire le plus utile
J'ai rencontré ce même problème et j'ai pu le résoudre en m'assurant que j'exécutais
rq worker
dans le répertoire où le module requis pouvait être importé.