Django和Mongodb导入:__schema__问题

时间:2018-06-04 09:55:55

标签: django mongodb

我已经按照this教程让Django与Mongodb合作。 当我尝试:

db.__schema__.find();

检查__schema__集合中的最后一个id是否等于MongoDB集合中的最后一个id,我收到以下错误:

TypeError: db.__schema__find is not a function : @(shell):1:1

已安装的版本:Django:2.0.5,Mongodb:3.6.5

我做错了什么?

这就是我所做的:

models.py

from django.db import models

class Strutture(models.Model):

  loc = models.CharField(max_length=255, null=True)
  location = models.FloatField
  comune = models.CharField(max_length=255, null=True)    

  def __str__(self):
      return self.nome_struttura

因此,我跑了:

manage.py makemigrations
manage.py migrate

然后我导入了db dump:

mongorestore --drop --nsFrom alberghi.strutture --nsTo alberghi.strutture_ricettive_strutture --db alberghi  /home/x/Scrivania/dump/alberghi

此时教程说你必须检查__schema__集合的“seq”字段,所以在Mongodb shell中:

> use alberghi
switched to db alberghi
> db.__schema__.find()
2018-06-04T17:23:00.391+0200 E QUERY    [thread1] TypeError: db.__schema__ is undefined :
@(shell):1:1
>

Django Traceback:

Environment:


Request Method: GET
Request URL: http://alberghi-sicilia.vmware/

Django Version: 2.0.5
Python Version: 3.6.5
Installed Applications:
['django.contrib.admin',
 'django.contrib.auth',
 'django.contrib.contenttypes',
 'django.contrib.sessions',
 'django.contrib.messages',
 'django.contrib.staticfiles',
 'strutture_ricettive']
Installed Middleware:
['django.middleware.security.SecurityMiddleware',
 'django.contrib.sessions.middleware.SessionMiddleware',
 'django.middleware.common.CommonMiddleware',
 'django.middleware.csrf.CsrfViewMiddleware',
 'django.contrib.auth.middleware.AuthenticationMiddleware',
 'django.contrib.messages.middleware.MessageMiddleware',
 'django.middleware.clickjacking.XFrameOptionsMiddleware']


Template error:
In template /var/www/django_virtualenv/progetti_django/alberghi_sicilia/strutture_ricettive/templates/strutture_ricettive/test.html, error at line 11
   id
   1 : <!doctype html>
   2 : <html>
   3 : <head>
   4 : <meta charset="utf-8">
   5 : <title>Documento senza titolo</title>
   6 : </head>
   7 : 
   8 : <body>
   9 : Ciao core!
   10 : <p>
   11 :    {{liste}} 
   12 :   
   13 : </p>
   14 : </body>
   15 : </html>
   16 : 

Traceback:

File "/var/www/django_virtualenv/progetti_django/lib/python3.6/site-packages/djongo/sql2mongo/query.py" in _align_results
  293.                         ret.append(doc[selected.column])

During handling of the above exception ('id'), another exception occurred:

File "/var/www/django_virtualenv/progetti_django/lib/python3.6/site-packages/django/core/handlers/exception.py" in inner
  35.             response = get_response(request)

File "/var/www/django_virtualenv/progetti_django/lib/python3.6/site-packages/django/core/handlers/base.py" in _get_response
  128.                 response = self.process_exception_by_middleware(e, request)

File "/var/www/django_virtualenv/progetti_django/lib/python3.6/site-packages/django/core/handlers/base.py" in _get_response
  126.                 response = wrapped_callback(request, *callback_args, **callback_kwargs)

File "/var/www/django_virtualenv/progetti_django/alberghi_sicilia/strutture_ricettive/views.py" in test
  16.     return render(request, 'strutture_ricettive/test.html', {'liste': liste})

File "/var/www/django_virtualenv/progetti_django/lib/python3.6/site-packages/django/shortcuts.py" in render
  36.     content = loader.render_to_string(template_name, context, request, using=using)

File "/var/www/django_virtualenv/progetti_django/lib/python3.6/site-packages/django/template/loader.py" in render_to_string
  62.     return template.render(context, request)

File "/var/www/django_virtualenv/progetti_django/lib/python3.6/site-packages/django/template/backends/django.py" in render
  61.             return self.template.render(context)

File "/var/www/django_virtualenv/progetti_django/lib/python3.6/site-packages/django/template/base.py" in render
  175.                     return self._render(context)

File "/var/www/django_virtualenv/progetti_django/lib/python3.6/site-packages/django/template/base.py" in _render
  167.         return self.nodelist.render(context)

File "/var/www/django_virtualenv/progetti_django/lib/python3.6/site-packages/django/template/base.py" in render
  943.                 bit = node.render_annotated(context)

File "/var/www/django_virtualenv/progetti_django/lib/python3.6/site-packages/django/template/base.py" in render_annotated
  910.             return self.render(context)

File "/var/www/django_virtualenv/progetti_django/lib/python3.6/site-packages/django/template/base.py" in render
  999.         return render_value_in_context(output, context)

File "/var/www/django_virtualenv/progetti_django/lib/python3.6/site-packages/django/template/base.py" in render_value_in_context
  978.             value = str(value)

File "/var/www/django_virtualenv/progetti_django/lib/python3.6/site-packages/django/db/models/query.py" in __repr__
  248.         data = list(self[:REPR_OUTPUT_SIZE + 1])

File "/var/www/django_virtualenv/progetti_django/lib/python3.6/site-packages/django/db/models/query.py" in __iter__
  272.         self._fetch_all()

File "/var/www/django_virtualenv/progetti_django/lib/python3.6/site-packages/django/db/models/query.py" in _fetch_all
  1179.             self._result_cache = list(self._iterable_class(self))

File "/var/www/django_virtualenv/progetti_django/lib/python3.6/site-packages/django/db/models/query.py" in __iter__
  62.         for row in compiler.results_iter(results):

File "/var/www/django_virtualenv/progetti_django/lib/python3.6/site-packages/django/db/models/sql/compiler.py" in cursor_iter
  1460.         for rows in iter((lambda: cursor.fetchmany(itersize)), sentinel):

File "/var/www/django_virtualenv/progetti_django/lib/python3.6/site-packages/django/db/models/sql/compiler.py" in <lambda>
  1460.         for rows in iter((lambda: cursor.fetchmany(itersize)), sentinel):

File "/var/www/django_virtualenv/progetti_django/lib/python3.6/site-packages/django/db/utils.py" in inner
  96.                 return func(*args, **kwargs)

File "/var/www/django_virtualenv/progetti_django/lib/python3.6/site-packages/djongo/cursor.py" in fetchmany
  59.                 ret.append(self.result.next())

File "/var/www/django_virtualenv/progetti_django/lib/python3.6/site-packages/djongo/sql2mongo/query.py" in __next__
  705.         return next(self._result_generator)

File "/var/www/django_virtualenv/progetti_django/lib/python3.6/site-packages/djongo/sql2mongo/query.py" in __iter__
  711.             yield from iter(self._query)

File "/var/www/django_virtualenv/progetti_django/lib/python3.6/site-packages/djongo/sql2mongo/query.py" in __iter__
  184.                     yield self._align_results(doc)

File "/var/www/django_virtualenv/progetti_django/lib/python3.6/site-packages/djongo/sql2mongo/query.py" in _align_results
  296.                             raise MigrationError(selected.column)

Exception Type: MigrationError at /
Exception Value: id

0 个答案:

没有答案