Commit Graph

3293 Commits

Author SHA1 Message Date
Paulo 1a2a7cc01e Fixed typo in db/models/fields/related_descriptors.py 2016-06-07 08:50:06 -04:00
Paulo 3e9f769fd1 Refs #15250 -- Added docstring for ForwardOneToOneDescriptor. 2016-06-07 07:22:32 -04:00
Sergey Fedoseev 7fc4c1db62 Fixed #26710 -- Made CreateModel.references_model() take app_label into account. 2016-06-06 11:49:45 -04:00
Simon Charette b484f167be Fixed #26712 -- Avoided unnecessary SET TIMEZONE queries on PostgreSQL.
A change of the USE_TZ or TIME_ZONE settings doesn't necessarily require a
change to the active connections' timezones.
2016-06-06 11:26:02 -04:00
Tim Graham e2296e7f0a Fixed #26667 -- Fixed a regression in queries on a OneToOneField that has to_field and primary_key=True.
Thanks Simon Charette for review.
2016-06-04 08:04:51 -04:00
mieciu 19ff506878 Fixed #26698 -- Fixed PostgreSQL dbshell crash on an empty database name. 2016-06-03 12:30:21 -04:00
Paulo 38575b007a Fixed #15250 -- Avoided extra query on some multi-table inheritance queries.
Thanks marekw2143 for the initial patch and carljm for support.
2016-06-03 10:18:24 -04:00
Will Koster 9899347641 Fixed #26638 -- Allowed callable arguments for QuerySet.get_or_create()/update_or_create() defaults. 2016-06-03 10:00:53 -04:00
Alex Hill 08014fe75b Fixed #26686 -- Fixed crash when registering model signals with abstract senders. 2016-06-02 14:34:01 -04:00
Simon Charette 53a5fb3cc0 Fixed #26676 -- Prevented prefetching to_attr from caching its result in through attr.
Thanks Ursidours for the report.
2016-05-31 14:32:58 -04:00
Vytis Banaitis f1e408ff40 Fixed #25044 -- Fixed migrations for renaming ManyToManyField's through model. 2016-05-30 10:17:45 -04:00
Tim Graham a4c20ae85b Refs #24227 -- Fixed crash of ManyToManyField.value_from_object() on unsaved model instances.
This behavior was removed in 67d984413c
but is needed to prevent a crash in formtools.
2016-05-28 15:41:47 -04:00
Alex Hill ff6c6feae1 Fixed #26642 -- Made ModelSignal.disconnect() work with lazy references. 2016-05-27 17:45:08 -04:00
Simon Charette 36d36818a3 Fixed #26647 -- Included the state of all applied migrations when migrating forward.
Thanks Jasper Maes for the detailed report.
2016-05-26 13:30:10 -04:00
Alex Hill 779bb82f51 Fixed #26421 -- Refactored ModelSignal to use Apps.lazy_model_operation() 2016-05-19 21:33:36 -04:00
Alex Hill 2ff7ef15b0 Refs #26421 -- Refactored Apps.lazy_model_operation() for better checks and tests 2016-05-19 21:33:36 -04:00
Tim Graham 546649f2d6 Fixed some newlines in imports per isort. 2016-05-19 11:05:44 -04:00
darius BERNARD a7ad473ad2 Fixed #26515 -- Fixed Query.trim_joins() for nested ForeignObjects. 2016-05-19 09:56:24 -04:00
Marti Raudsepp b9ae662c97 Fixed #26620 -- Made Model.refresh_from_db() fail when passed unknown kwargs. 2016-05-18 09:27:23 -04:00
Barthelemy Dagenais a5c8072ab1 Fixed #26627 -- Fixed on_commit callbacks execution order when callbacks make transactions. 2016-05-18 09:09:48 -04:00
Josh Smeaton 2a4af0ea43 Fixed #25774 -- Refactor datetime expressions into public API 2016-05-18 20:14:58 +10:00
Josh Smeaton 77b73e79a4 Refs #25774 -- Made Oracle truncate microseconds if USE_TZ=False.
The tests for this change are in the fix for #25774.
2016-05-18 20:14:58 +10:00
Philip Liberato 3630b49b55 Fixed #26613 -- Made sqlite3 optional in SchemaEditor.quote_value(). 2016-05-17 21:43:37 -04:00
boaz85@gmail.com 5f23f904af Fixed #14415 -- Used the test database name in BaseDatabaseCreation.test_db_signature(). 2016-05-17 21:35:36 -04:00
Loïc Bistuer ed0ff913c6 Fixed #10506, #13793, #14891, #25201 -- Introduced new APIs to specify models' default and base managers.
This deprecates use_for_related_fields.

Old API:

class CustomManager(models.Model):
    use_for_related_fields = True

class Model(models.Model):
    custom_manager = CustomManager()

New API:

class Model(models.Model):
    custom_manager = CustomManager()

    class Meta:
        base_manager_name = 'custom_manager'

Refs #20932, #25897.

Thanks Carl Meyer for the guidance throughout this work.
Thanks Tim Graham for writing the docs.
2016-05-17 12:07:22 +07:00
Loïc Bistuer 3a47d42fa3 Fixed #20932, #25897 -- Streamlined manager inheritance. 2016-05-17 02:29:22 +07:00
Aron Podrigal 85ef98dc6e Fixed #24305 -- Allowed overriding fields on abstract models.
Fields inherited from abstract base classes may be overridden like
any other Python attribute. Inheriting from multiple models/classes
with the same attribute name will follow the MRO.
2016-05-16 07:32:21 -04:00
Simon Charette f937c9ec97 Fixed #24100 -- Made the migration signals dispatch its plan and apps.
Thanks Markus for your contribution and Tim for your review.
2016-05-15 19:51:15 -04:00
Tim Graham cb4be0262a Removed unused code in AlterField.database_forwards().
This code added in 107c9f5453 isn't
used after 4ce7a6bc84.
2016-05-14 06:43:40 -04:00
Tim Graham 3642835bde Removed redundant code in QuerySet._batched_insert(). 2016-05-14 06:42:50 -04:00
Simon Charette c0118ff80b Refs #24201 -- Ignored order_with_respect_to private fields in migrations.
Thanks Tim for the review.
2016-05-13 15:43:23 -04:00
Tim Graham 67d984413c Refs #24227 -- Removed ManyToManyField special casing in model_to_dict(). 2016-05-11 10:12:59 -04:00
Raphael Gaschignard 8f6a1a1551 Fixed #26429 -- Added a timestamp to merge migration names.
This reduces the possibility of a naming conflict, especially after
squashing migrations.
2016-05-11 08:19:19 -04:00
Iacopo Spalletti 49c57f8565 Fixed #25005 -- Made date and time fields with auto_now/auto_now_add use effective default.
Thanks to Andriy Sokolovskiy for initial patch.
2016-05-09 07:48:40 -04:00
Ville Skyttä 413f3bb5c8 Replaced `six.callable` with `callable`. 2016-05-08 18:07:15 -04:00
Jarek Glowacki 509379a161 Fixed #25945, #26292 -- Refactored MigrationLoader.build_graph() 2016-05-08 13:53:26 +02:00
Markus Holtermann deeffde84a Fixed #26593 -- Leveraged deferrable_sql() in SchemaEditor 2016-05-07 01:21:00 +02:00
Markus Holtermann 3b383085fb Fixed #26555 -- Gave deconstructible objects a higher priority during serialization 2016-05-04 22:39:19 +02:00
Claude Paroz 388bb5bd9a Fixed #22936 -- Obsoleted Field.get_prep_lookup()/get_db_prep_lookup()
Thanks Tim Graham for completing the initial patch.
2016-05-04 20:02:01 +02:00
Ville Skyttä 575a9a791e Normalized "an SQL" spelling. 2016-05-03 19:30:48 -04:00
Simon Charette 7ec330eeb9 Refs #26565 -- Errored nicely when using Prefetch with a values() queryset.
Thanks Maxime Lorant for the report and Anssi for the suggestion.
2016-05-03 09:28:31 -04:00
Michal Petrucha 8a47ba679d Refs #16508 -- Made Model.__init__() aware of virtual fields.
It's no longer necessary for GenericForeignKey (and any other virtual fields)
to intercept the field's values using the pre_init signal.
2016-05-03 09:06:26 -04:00
Tim Graham eab5df12b6 Refs #22936 -- Moved more of Field.get_db_prep_lookup() to lookups. 2016-05-02 07:58:24 -04:00
Cristiano 914c72be2a Fixed #26058 -- Delegated os.path bits of FileField's filename generation to the Storage. 2016-04-30 17:22:40 -04:00
Anssi Kääriäinen 7f51876f99 Fixed #26207 -- Replaced dynamic classes with non-data descriptors for deferred instance loading. 2016-04-29 13:06:32 -04:00
Joshua Phillips 4681d65048 Fixed #26557 -- Converted empty strings to None when saving GenericIPAddressField. 2016-04-29 10:11:49 -04:00
Simon Charette f951bb78cb Refs #26521 -- Adjusted CreateModel bases validation to account for mixins.
Thanks Collin for the report.
2016-04-28 18:20:48 -04:00
Simon Charette a877a2f83d Refs #26521 -- Added the duplicated value to CreateModel validation messages.
Thanks Tim for the suggestion.
2016-04-27 16:17:22 -04:00
James Robert 417e083e55 Fixed #26521 -- Validated CreateModel bases, fields and managers for duplicates. 2016-04-27 12:43:56 -04:00
Tim Graham 1ba0b22a7a Refs #22936 -- Removed unused code in Field.get_db_prep_lookup(). 2016-04-25 08:31:32 -04:00
Tim Graham b454e2cbc9 Removed unused Q.clone().
Unused since afe0bb7b13.
2016-04-25 08:31:32 -04:00
Tim Graham 901dc90db0 Removed unused/untested Field.get_choices_default()/value_to_string() methods. 2016-04-25 08:05:27 -04:00
Tim Graham a755e0657e Removed unused BaseExpression.refs_aggregate().
Unused since afe0bb7b13.
2016-04-22 13:04:13 -04:00
Tim Graham 87338198e9 Fixed #26320 -- Deprecated implicit OneToOnField parent_link. 2016-04-22 12:59:41 -04:00
Tim Graham 6b0a25d9e2 Removed unused ForeignObject.attnames/get_defaults(). 2016-04-22 10:00:50 -04:00
Tim Graham 2da7f5afcf Removed unused ForeignObjectRel.get_choices() limit_to_currently_related argument.
Unused since its introduction in dc334a2ba8.
2016-04-22 08:45:41 -04:00
Marc Tamlyn 2d877da855 Refs #3254 -- Added full text search to contrib.postgres.
Adds a reasonably feature complete implementation of full text search
using the built in PostgreSQL engine. It uses public APIs from
Expression and Lookup.

With thanks to Tim Graham, Simon Charettes, Josh Smeaton, Mikey Ariel
and many others for their advice and review. Particular thanks also go
to the supporters of the contrib.postgres kickstarter.
2016-04-22 10:44:37 +01:00
Loïc Bistuer a885bca1df Fixed #26528 -- Allowed any iterable (e.g. tuple) as validators kwarg for form/model fields. 2016-04-22 09:38:47 +07:00
Matthew Schinckel 5402f3ab09 Fixed #26475 -- Added functools.partial() support to migrations autodetector. 2016-04-19 10:17:11 -04:00
Lukasz Wiecek d3c87a2425 Fixed #26498 -- Fixed TimeField microseconds round-tripping on MySQL and SQLite.
Thanks adamchainz for the report and review.
2016-04-18 09:39:46 -04:00
Tim Graham 0456a8b9e6 Fixed #26486 -- Fixed a select_related() + defer() MTI edge case. 2016-04-13 10:32:17 -04:00
Michal Petrucha c339a5a6f7 Refs #16508 -- Renamed the current "virtual" fields to "private".
The only reason why GenericForeignKey and GenericRelation are stored
separately inside _meta is that they need to be cloned for every model
subclass, but that's not true for any other virtual field. Actually,
it's only true for GenericRelation.
2016-04-13 10:10:53 -04:00
Tim Graham 1c30a6473d Refs #22936 -- Moved IntegerField.get_prep_lookup() logic to lookups. 2016-04-12 10:14:41 -04:00
Claude Paroz f9a2a7db17 Fixed #26351 -- Added MySQL check to warn about strict mode option
Thanks Adam Chainz for the initial implementation in django-mysql.
Thanks Adam Chainz, Tim Graham, and Shai Berger for the reviews.
2016-04-08 20:34:16 +02:00
Claude Paroz 0d3c616fbb Refs #26351 -- Added check hook to support database-related checks
Thanks Tim Graham and Shai Berger for the reviews.
2016-04-08 20:28:00 +02:00
Tim Graham df8d8d4292 Fixed E128 flake8 warnings in django/. 2016-04-08 09:51:06 -04:00
Simon Charette a6074e8908 Fixed #26458 -- Based Avg's default output_field resolution on its source field type.
Thanks Tim for the review and Josh for the input.
2016-04-05 23:48:08 -04:00
Attila Tovt 02ae5fd31a Fixed #25850 -- Made migrate/makemigrations error on inconsistent history. 2016-04-05 08:52:08 -04:00
Tim Graham 6448873197 Fixed E402 flake8 warnings. 2016-04-04 17:14:27 -04:00
Tim Graham 2cd2d18851 Fixed W503 flake8 warnings. 2016-04-04 17:14:26 -04:00
Susan Tan b0803d64c4 Fixed #26075 -- Added clearer wording for one-off values in makemigrations 2016-04-03 17:12:55 +02:00
Markus Holtermann 103d4e1d65 Fixed #26441 -- Added model Field.db_check() method
Thanks Common Code for financing the work on this commit.
2016-04-03 09:56:59 +02:00
Iacopo Spalletti 394755b8d9 Fixed #26443 -- Corrected timezone.now in MigrationQuestioner prompt 2016-04-03 01:33:06 +02:00
Akshesh 49f95cc0a0 Fixed #11560 -- Allowed proxy model multiple-inheritance from the same concrete base model. 2016-03-30 13:06:27 -04:00
Alex Hill 4b2cf1cd27 Fixed #26384 -- Fixed renaming the PK on a model with a self-referential FK on SQLite. 2016-03-29 13:25:09 -04:00
Claude Paroz 03b6947728 Fixed #24932 -- Added Cast database function.
Thanks Ian Foote for the initial patch.
2016-03-29 08:14:33 -04:00
Kai Feldhoff 5336158990 Fixed #25759 -- Added keyword arguments to customize Expressions' as_sql(). 2016-03-29 08:09:58 -04:00
Simon Charette 67cf5efa31 Fixed #26413 -- Fixed a regression with abstract model inheritance and explicit parent links.
Thanks Trac alias trkjgrdg for the report and Tim for investigation and review.
2016-03-28 21:11:37 -04:00
Tim Graham 1c8c0837c6 Sorted single letter imports per the latest version of isort. 2016-03-28 11:45:31 -04:00
Claude Paroz fc01c84bad Avoided need to import model fields in models/functions.py. 2016-03-28 10:59:30 -04:00
Tim Graham fb84e877ce Normalized Func.as_sqlite() signature. 2016-03-28 10:59:12 -04:00
Alexey Kotlyarov a52a531a8b Fixed #26398 -- Made FieldFile.open() respect its mode argument. 2016-03-23 10:05:26 -04:00
Berker Peksag 157d7f1f1d Fixed #25388 -- Added an option to allow disabling of migrations during test database creation 2016-03-23 08:21:30 +08:00
Kai Feldhoff baa8b0ec39 Refs #25759 -- Fixed some Funcs to work if different database backends are used. 2016-03-21 20:20:29 -04:00
Jason Parrott 4c1c93032f Fixed #26373 -- Fixed reverse lookup crash with a ForeignKey to_field in a subquery. 2016-03-19 17:54:29 -04:00
Claude Paroz 983c158da7 Refs #24227 -- Replaced M2M isinstance checks by field.many_to_many
Thanks Markus Holtermann, Collin Anderson and Tim Graham for the reviews.
2016-03-19 09:24:27 +01:00
Andrew Godwin 2b3a941457 Merge pull request #6310 from apollo13/informix
Pass type to sql_alter_column*.
2016-03-18 19:47:15 -03:00
Florian Apolloner 37cde8667e Pass type to sql_alter_column*.
This helps databases which need the database type when changing the default
(Just like MySQL needs it for changing null…)
2016-03-18 23:11:02 +01:00
Tim Graham f15f4b8bb6 Refs #26367 -- Removed obsolete _size cache on FieldField.
The _size attribute is used in File.size but FieldFile overrides it.
2016-03-17 10:25:17 -04:00
Markus Holtermann 1cb65b8a77 Fixed #26157 #25321 -- Added sql/params to extra context of schema logger
Thanks Akshesh Doshi for the initial patch and Tim Graham for the review
2016-03-15 17:45:58 +11:00
Claude Paroz 204e00c0c5 Fixed #26140 -- Suppressed MySQL warning when inserting binary content
Thanks Tim Graham for the review.
2016-03-14 18:08:13 +01:00
Noenglish Professorbut f8d20da047 Fixed a few docstring typos. 2016-03-12 08:45:06 -05:00
Tim Graham 4f0cd0fd16 Fixed #26324 -- Fixed DurationField with fractional seconds on SQLite. 2016-03-10 12:18:29 -05:00
Jarek Glowacki 34c56687ae Fixed #26342 -- Prevented unpacking when repr a NodeNotFoundError 2016-03-10 17:27:35 +11:00
Tim Graham 359be4460e Refs #19527 -- Fixed SQL compiler regression causing Oracle failure. 2016-03-05 14:02:35 -05:00
Akshesh b886f166b3 Fixed #26316 -- Factored duplicated code in model/field migration operations. 2016-03-03 18:24:36 -05:00
Simon Charette c92123cc1d Fixed #26226 -- Made related managers honor the queryset used for prefetching their results.
Thanks Loïc for the suggested improvements and Tim for the review.
2016-03-02 16:10:18 -05:00
Marc Tamlyn 8ddc79a799 Fixed #26285 -- Deprecated the MySQL-specific __search lookup. 2016-03-02 14:41:56 -05:00
acrefoot 04240b2365 Refs #19527 -- Allowed QuerySet.bulk_create() to set the primary key of its objects.
PostgreSQL support only.

Thanks Vladislav Manchev and alesasnouski for working on the patch.
2016-03-02 14:29:09 -05:00
Matthew Schinckel 60633ef3de Fixed #26304 -- Ignored unmanaged through model in table introspection. 2016-03-02 13:54:27 -05:00