Giter Club home page Giter Club logo

django's Introduction

Django is a high-level Python Web framework that encourages rapid development
and clean, pragmatic design.

All documentation is in the "docs" directory and online at
http://docs.djangoproject.com/en/dev/. If you're just getting started, here's
how we recommend you read the docs:

    * First, read docs/intro/install.txt for instructions on installing Django.

    * Next, work through the tutorials in order (docs/intro/tutorial01.txt,
      docs/intro/tutorial02.txt, etc.).

    * If you want to set up an actual deployment server, read
      docs/howto/deployment/index.txt for instructions.

    * You'll probably want to read through the topical guides (in docs/topics)
      next; from there you can jump to the HOWTOs (in docs/howto) for specific
      problems, and check out the reference (docs/ref) for gory details.

    * See docs/README for instructions on building an HTML version of the docs.

Docs are updated rigorously. If you find any problems in the docs, or think they
should be clarified in any way, please take 30 seconds to fill out a ticket
here:

http://code.djangoproject.com/newticket

To get more help:

    * Join the #django channel on irc.freenode.net. Lots of helpful people
      hang out there. Read the archives at http://django-irc-logs.com/.

    * Join the django-users mailing list, or read the archives, at
      http://groups.google.com/group/django-users.

To contribute to Django:

    * Check out http://www.djangoproject.com/community/ for information
      about getting involved.

To run Django's test suite:

    * Follow the instructions in the "Unit tests" section of
      docs/internals/contributing.txt, published online at
      https://docs.djangoproject.com/en/dev/internals/contributing/writing-code/unit-tests/#running-the-unit-tests

django's People

Contributors

aaugustin avatar adrianholovaty avatar akaariai avatar alex avatar apollo13 avatar bmispelon avatar brosner avatar carljm avatar charettes avatar claudep avatar freakboy3742 avatar gdub avatar honzakral avatar jacobian avatar jbronn avatar jezdez avatar jkocherhans avatar jphalip avatar kmtracey avatar malcolmt avatar mjtamlyn avatar nightflyerkilo avatar paulmcmillan avatar ptone avatar ramiro avatar smileychris avatar spookylukey avatar telenieko avatar timgraham avatar ubernostrum avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

django's Issues

No module named django

I'm trying to install django-nonrel with mongodb support, below installed packages

git+https://github.com/django-nonrel/[email protected]
git+https://github.com/django-nonrel/djangotoolbox  # v1.8.0
git+https://github.com/django-nonrel/mongodb-engine  # v0.6.0
pymongo==3.1
mongoadmin==0.2
mongodbforms==0.3
mongoengine==0.10.0

and my settings file is as follow:

INSTALLED_APPS = (
    # 'django.contrib.admin',
    # 'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'djangotoolbox',
)

and for db settings:

DATABASES = {
   'default' : {
      'ENGINE' : 'django_mongodb_engine',
      'NAME' : 'mydb',
      'HOST': 'mongo'
   }
}

When I run manage.py syncdb, I got this error:

NotImplementedError: subclasses of BaseDatabaseIntrospection may require a get_table_list() method

and if I run manage.py without specifying any command, I got:

ImportError: No module named django

However django is installed and the pythonpath is properely configured

Django tests fail on AppEngine

When I run the tests for Django 1.4 in an AppEngine project, I get about 20 failures/errors. Prior to version 1.4, all tests passed.

The failures are all in contrib.auth, contrib.contenttypes, and contrib.sessions. The errors are mostly "This query is not supported by the database" and "Only strings and positive integers may be used as keys on GAE."

Has Django-nonrel 1.4 been tested much against GAE? Are these tests expected to pass, or do they need qualifiers (I know many tests are already marked as "requiring JOIN support") so that they'll be skipped on GAE?

I'm happy to help get them running properly if needed; just want to see what the state is expected to be and make sure this isn't due to actual misconfiguration in my project.

Labeling current versions

Both the mongodb-engine and the djangoappengine installation pages reference the 1.5 branch from GitHub. From what I can tell and based on a response on the mailing list, 1.6 is stable now, and if so that should be the recommended version.

More generally, the documentation somewhere should say something about the stability of the various version branches. Apparently 1.7 isn't "ready for prime time" yet but that should be more clearly stated somewhere.

Issue while installing, not cloning.

I'm trying to install this library using the command given below:

pip install git+https://github.com/django-nonrel/[email protected]

but It gets stuck on this

Collecting git+https://github.com/django-nonrel/[email protected]
Cloning https://github.com/django-nonrel/django (to nonrel-1.5) to /var/folders/wn/klm7h6757yj5lj60zdk7w2bw0000gn/T/pip-90prjk0m-build

Upgrading to 1.5.x

Hi,
I've forked the repo to upgrading it to 1.5.x, But there's a nonrel-1.5-beta branch that I've not tested it yet.

I would like to know if there's any guide, tips or any other kind of todo-list to help me start working upgrading 1.5.x part.

Thanks,

Filtering Month/Day/hours

I was trying to perform the openration __range
but it raised this exception
DatabaseError: MongoDB does not support month/day queries.

Also from the documentation we can see that the only QuerySet methods available is :
__year

Is there a way to filter on a Month or Day and time ?

Django 1.6 in GAE, iexact error, even with dbindexer

I tried to update to Django 1.6 from 1.5.5. Mostly works, except when I try to do a search in User admin. The default searches for email iexact. Django gives me the 'Lookup type 'iexact' isn't supported.' error.

I am using djangoappengine and dbindexer. Dbindexer does load the __iexact field into the db. The

register_index(User, {
'username': 'iexact',
'email': 'iexact',
})

does seems to register. But, this version of Django 1.6.11 does not like the iexact.

Traceback:
File "/libs/django/core/handlers/base.py" in get_response

  1.                 response = wrapped_callback(request, _callback_args, *_callback_kwargs)
    
    File "/libs/django/contrib/admin/options.py" in wrapper
  2.             return self.admin_site.admin_view(view)(_args, *_kwargs)
    
    File "/libs/django/utils/decorators.py" in _wrapped_view
  3.                 response = view_func(request, _args, *_kwargs)
    
    File "/libs/django/views/decorators/cache.py" in _wrapped_view_func
  4.     response = view_func(request, _args, *_kwargs)
    
    File "/libs/django/contrib/admin/sites.py" in inner
  5.         return view(request, _args, *_kwargs)
    
    File "/libs/django/utils/decorators.py" in _wrapper
  6.         return bound_func(_args, *_kwargs)
    
    File "/libs/django/utils/decorators.py" in _wrapped_view
  7.                 response = view_func(request, _args, *_kwargs)
    
    File "/libs/django/utils/decorators.py" in bound_func
  8.             return func(self, _args2, *_kwargs2)
    
    File "/libs/django/contrib/admin/options.py" in changelist_view
  9.         'selection_note': _('0 of %(cnt)s selected') % {'cnt': len(cl.result_list)},
    
    File "/libs/django/db/models/query.py" in len
  10.     self._fetch_all()
    
    File "/libs/django/db/models/query.py" in _fetch_all
  11.         self._result_cache = list(self.iterator())
    
    File "/libs/django/db/models/query.py" in iterator
  12.     for row in compiler.results_iter():
    
    File "/libs/djangotoolbox/db/basecompiler.py" in results_iter
  13.         results = self.build_query(fields).fetch(
    
    File "/libs/djangotoolbox/db/basecompiler.py" in build_query
  14.     query.add_filters(self.query.where)
    
    File "/libs/djangotoolbox/db/basecompiler.py" in add_filters
  15.         self.add_filter(field, lookup_type, self._negated, value)
    
    File "/libs/djangoappengine/db/compiler.py" in _func
  16.         return func(_args, *_kwargs)
    
    File "/libs/djangoappengine/db/compiler.py" in add_filter
  17.                             lookup_type)
    

Exception Type: DatabaseError at /admin/auth/user/
Exception Value: Lookup type 'iexact' isn't supported.

Thanks

save() method of Models does not support update_fields with non-rel backends

Django version 1.5
Backend: Mongodb

save() call on models does not work correctly with update_fields...It still saves all the fields in a model. Looking at the code at ~/django/db/models/base.py in save_base, it seems that the param distinguishes_insert_from_update makes the code attempt inserts everytime and hence it forgets to take care of the fields specified in update_fields.. What can be the work around?

django-nonrel with existing database

Posting my question from stack overflow - http://stackoverflow.com/questions/31442632/django-nonrel-with-existing-legacy-database.

Sorry about filing an issue but I tried to attach the label "question" but was not successful in doing so. Please point me in the right direction if this is against community guidelines.

We have a large existing database and I am using django-nonrel to write an app on it. As far as possible I want to avoid using the pymongo interface to talk to the database.

I used the meta tag db_table to point to the existing collection and executed syncdb without any issues. I can see the collection in the admin view and .objects.all.count() returns the expected value but all the entries are none.

When I try to open an entry from admin view to edit/view it I get error -

AutoField (default primary key) values must be strings representing an ObjectID on MongoDB (got u'' instead)
When I googled I found this solution http://django-mongodb-engine.readthedocs.org/en/latest/troubleshooting.html but this doesnt look like the site ID issue as the value of _id from my mongo database.

Any pointers will be really helpful as replicating the data is not an option.

Thanks Aditya

Issues with tests when using mongodb

Using version 1.6.8 I get the following error when running tests

Traceback (most recent call last):
File "/home/chelis/development/python/Envs/UnifiedPatents/local/lib/python2.7/site-packages/django/test/testcases.py", line 187, in call
self._post_teardown()
File "/home/chelis/development/python/Envs/UnifiedPatents/local/lib/python2.7/site-packages/django/test/testcases.py", line 796, in _post_teardown
self._fixture_teardown()
File "/home/chelis/development/python/Envs/UnifiedPatents/local/lib/python2.7/site-packages/django/test/testcases.py", line 889, in _fixture_teardown
return super(TestCase, self)._fixture_teardown()
File "/home/chelis/development/python/Envs/UnifiedPatents/local/lib/python2.7/site-packages/django/test/testcases.py", line 817, in _fixture_teardown
inhibit_post_syncdb=self.available_apps is not None)
File "/home/chelis/development/python/Envs/UnifiedPatents/local/lib/python2.7/site-packages/django/core/management/init.py", line 159, in call_command
return klass.execute(_args, *_defaults)
File "/home/chelis/development/python/Envs/UnifiedPatents/local/lib/python2.7/site-packages/django/core/management/base.py", line 285, in execute
output = self.handle(_args, *_options)
File "/home/chelis/development/python/Envs/UnifiedPatents/local/lib/python2.7/site-packages/django/core/management/base.py", line 415, in handle
return self.handle_noargs(**options)
File "/home/chelis/development/python/Envs/UnifiedPatents/local/lib/python2.7/site-packages/django/core/management/commands/flush.py", line 79, in handle_noargs
six.reraise(CommandError, CommandError(new_msg), sys.exc_info()[2])
File "/home/chelis/development/python/Envs/UnifiedPatents/local/lib/python2.7/site-packages/django/core/management/commands/flush.py", line 67, in handle_noargs
savepoint=connection.features.can_rollback_ddl):
File "/home/chelis/development/python/Envs/UnifiedPatents/local/lib/python2.7/site-packages/django/db/transaction.py", line 251, in enter
"The outermost 'atomic' block cannot use "
CommandError: Database test_patent_litigation couldn't be flushed. Possible reasons:

  • The database isn't running or isn't configured correctly.
  • At least one of the expected database tables doesn't exist.
  • The SQL was invalid.
    Hint: Look at the output of 'django-admin.py sqlflush'. That's the SQL this command wasn't able to run.
    The full error: The outermost 'atomic' block cannot use savepoint = False when autocommit is off.

according to this post http://stackoverflow.com/questions/28520599/django-nonrel-mongodb-error-while-running-tests it runs with 1.5. Looking at djangos doc, 1.6 changed transaction behavior

https://docs.djangoproject.com/en/1.6/topics/db/transactions/

Changed in Django 1.6:
Before Django 1.6, autocommit was turned off, and it was emulated by forcing a commit after write operations in the ORM.

So I guess that's the reason of this issue.

Distinguishing inserts from updates

This is possibly mongodb focussed but I don't have enough knowledge of other nonrel dbs to make that call. We're using mongodb so are using djangotoolbox and mongodb-engine.

In the case that another part of our system has modified a document in our collection and our django model isn't totally up to date with the full schema when we save from django we lose the changes made by the other part of the system.

When calling save on a django model I have discovered that we end up using the NonrelInsertCompiler which in most cases isn't really a problem. However in the case that another part of our system has modified the document in our collection and our django model isn't totally up to date with it's schema when we save from django we lose the changes made by the other part of the system. This could also manifest under a simple race condition.

If I was hand writing the db logic, I would be using an update with the $set operator to set the fields. I can see that the NonrelUpdateCompiler seems to do this, so I figured I could probably use the force_update parameter on the save call:

model.save(force_update=True)

but it still ended up doing an insert. So having stepped through the code I can see that the distinguishes_insert_from_update is set to False in the NonrelDatabaseFeatures class.

Happy to look into how to get this working. I believe it should work this way, but would like some input/guidance from others first.

Error using Social authentication methods

The problem discussed here has been raised by so many users and they have been working with workarounds. But that is not the solution to it.
omab/django-social-auth#364

Error:
DatabaseError at /admin/default/usersocialauth/
This query is not supported by the database.
I have used python-social-auth with django-mongodb-engine
Error during template rendering

In template /home/chaitanya/venv/local/lib/python2.7/site-packages/django/contrib/admin/templates/admin/change_list.html, error at line
This query is not supported by the database. {% admin_list_filter cl spec %}

      {{ cl.formset.non_form_errors }}
    {% endif %}
    <div class="module{% if cl.has_filters %} filtered{% endif %}" id="changelist">
          {% block search %}{% search_form cl %}{% endblock %}
          {% block date_hierarchy %}{% date_hierarchy cl %}{% endblock %}   
          {% block filters %}
        {% if cl.has_filters %}
          <div id="changelist-filter">
          <h2>{% trans 'Filter' %}</h2>
          {% for spec in cl.filter_specs %}{% admin_list_filter cl spec %}{% endfor%}
          </div>
        {% endif %}
      {% endblock %}    
 <form id="changelist-form" action="" method="post"{% if cl.formset.is_multipart %} enctype="multipart/form-data"{% endif %}>{% csrf_token %}
          {% if cl.formset %}
            <div>{{ cl.formset.management_form }}</div>
          {% endif %}   
      {% block result_list %}

Some workaround has been discussed here:
http://stackoverflow.com/questions/13138816/django-admin-filters-and-mongodb-caught-databaseerror-while-rendering-this-que/13193947#13193947

Default site problem

I just updated my django nonrel to version 1.4. and I am using MongoDB as database. When I run a syncdb in a new database (No problem if I use my previous database) or when I run the tests it fails as if I didn't configure the SITE_ID in settings. The problem is that, when I perform this actions, django tries to create the default site using 1 as pk. as can be seen in the following code included in the file lib/python2.7/site-packages/django/contrib/sites/management.py

def create_default_site(app, created_models, verbosity, db, **kwargs):
     # Only create the default sites in databases where Django created the table
     if Site in created_models and router.allow_syncdb(db, Site) :
         # The default settings set SITE_ID = 1, and some tests in Django's test
         # suite rely on this value. However, if database sequences are reused
         # (e.g. in the test suite after flush/syncdb), it isn't guaranteed that
         # the next id will be 1, so we coerce it. See #15573 and #16353. This
         # can also crop up outside of tests - see #15346.
         if verbosity >= 2:
             print "Creating example.com Site object"
         Site(pk=1, domain="example.com", name="example.com").save(using=db)
         
         # We set an explicit pk instead of relying on auto-incrementation,
         # so we need to reset the database sequence. See #17415.
         sequence_sql = connections[db].ops.sequence_reset_sql(no_style(), [Site])
         if sequence_sql: 
             if verbosity >= 2:
                 print "Resetting sequence"
             cursor = connections[db].cursor()
             for command in sequence_sql:
                 cursor.execute(command)
     
     Site.objects.clear_cache()

I fixed it in my version just changing the pk of the default site, but I think this could be a problem

[QUESTION] Django 1.6.2 compatibility

Hi,
I'm looking into using Django with MongoDB. I have noticed that this doesn't work properly with Django 1.6.2.

I was wondering if there will be a update soon that will make this possible?

Kind regards,
Raoul

Foreign Key linking in parent fails unless make temp name for child.

I'm switching from mongoengine to mongodbengine (nonrel) hoping to become more standardized, but something that worked in the old system doesn't with the current 1.4 branch.

In a view I'm trying to link up a child object to a parent and this code doesn't create the foreign key link...

(model.py)

class Child(Model):
    a = ...

class Parent(Model):
    child = ForeignKey(Child, null=True)

(view.py)

if not parent.child:
    parent.child = Child()
parent.child.a = ...
parent.child.save()
parent.save()

I get a new child object with the attribute a set, but the parent doesn't have the ID of the new child object in the child attribute (it has null). But this version does work.

if not parent.child:
    child = Child()
else:
    child = parent.child
child.a = ...
child.save()
parent.child = child
parent.save()

No idea why, but I assume there is a subtle bug here. And as I said with Django 1.4.2 and mongoengine (+ parts) it worked fine.

manage.py help Raises Error

I installed this and wanted to test by manage.py help, however, it raises error, saying:

Usage: manage.py subcommand [options] [args]

Options:
  -v VERBOSITY, --verbosity=VERBOSITY
                    Verbosity level; 0=minimal output, 1=normal output,
                    2=verbose output, 3=very verbose output
  --settings=SETTINGS   The Python path to a settings module, e.g.
                    "myproject.settings.main". If this isn't provided, the
                    DJANGO_SETTINGS_MODULE environment variable will be
                    used.
  --pythonpath=PYTHONPATH
                    A directory to add to the Python path, e.g.
                    "/home/djangoprojects/myproject".
  --traceback           Raise on exception
  --version             show program's version number and exit
  -h, --help            show this help message and exit
Traceback (most recent call last):
  File "manage.py", line 10, in <module>
    execute_from_command_line(sys.argv)
  File "/home/erayerdin/.venv/eshot-api/lib/python3.5/site-packages/django/core/management/__init__.py", line 399, in execute_from_command_line
    utility.execute()
  File "/home/erayerdin/.venv/eshot-api/lib/python3.5/site-packages/django/core/management/__init__.py", line 376, in execute
    sys.stdout.write(self.main_help_text() + '\n')
  File "/home/erayerdin/.venv/eshot-api/lib/python3.5/site-packages/django/core/management/__init__.py", line 240, in main_help_text
    for name, app in six.iteritems(get_commands()):
  File "/home/erayerdin/.venv/eshot-api/lib/python3.5/site-packages/django/core/management/__init__.py", line 107, in get_commands
    apps = settings.INSTALLED_APPS
  File "/home/erayerdin/.venv/eshot-api/lib/python3.5/site-packages/django/conf/__init__.py", line 54, in __getattr__
    self._setup(name)
  File "/home/erayerdin/.venv/eshot-api/lib/python3.5/site-packages/django/conf/__init__.py", line 50, in _setup
    self._configure_logging()
  File "/home/erayerdin/.venv/eshot-api/lib/python3.5/site-packages/django/conf/__init__.py", line 72, in _configure_logging
    from django.utils.log import DEFAULT_LOGGING
  File "/home/erayerdin/.venv/eshot-api/lib/python3.5/site-packages/django/utils/log.py", line 7, in <module>
    from django.views.debug import ExceptionReporter, get_exception_reporter_filter
  File "/home/erayerdin/.venv/eshot-api/lib/python3.5/site-packages/django/views/debug.py", line 12, in <module>
    from django.template import Template, Context, TemplateDoesNotExist
  File "/home/erayerdin/.venv/eshot-api/lib/python3.5/site-packages/django/template/__init__.py", line 53, in <module>
    from django.template.base import (ALLOWED_VARIABLE_CHARS, BLOCK_TAG_END,
  File "/home/erayerdin/.venv/eshot-api/lib/python3.5/site-packages/django/template/base.py", line 19, in <module>
    from django.utils.html import escape
  File "/home/erayerdin/.venv/eshot-api/lib/python3.5/site-packages/django/utils/html.py", line 14, in <module>
    from .html_parser import HTMLParser, HTMLParseError
  File "/home/erayerdin/.venv/eshot-api/lib/python3.5/site-packages/django/utils/html_parser.py", line 12, in <module>
    HTMLParseError = _html_parser.HTMLParseError
AttributeError: module 'html.parser' has no attribute 'HTMLParseError'

Further Debug

I realized that this is Django 1.6.x and I upgraded that, then it is solved.


Environment

  • python 3.5.1
  • ubuntu 14.04

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.