Re: [Django] #29987: Deleting non-managed model does not generate a DeleteModel in migrations

2018-11-30 Thread Django
#29987: Deleting non-managed model does not generate a DeleteModel in migrations
-+-
 Reporter:  Daniel Bowring   |Owner:  Tim
 |  Fiedler
 Type:  Bug  |   Status:  closed
Component:  Migrations   |  Version:  2.1
 Severity:  Normal   |   Resolution:  fixed
 Keywords:  autodetector | Triage Stage:  Accepted
  managed model delete   |
Has patch:  1|  Needs documentation:  0
  Needs tests:  0|  Patch needs improvement:  0
Easy pickings:  0|UI/UX:  0
-+-
Changes (by Tim Graham ):

 * status:  assigned => closed
 * resolution:   => fixed


Comment:

 In [changeset:"b07273a0f710c0ed00ccbc1c555b4f1e5d6fc662" b07273a]:
 {{{
 #!CommitTicketReference repository=""
 revision="b07273a0f710c0ed00ccbc1c555b4f1e5d6fc662"
 Fixed #29987 -- Detected unmanaged model deletions.
 }}}

-- 
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To post to this group, send email to django-updates@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/066.7ade3d5641c235da104c620ca50e7582%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.


Re: [Django] #30001: Mark UUIDField.description for translation (was: Add translation for UUID Field Description)

2018-11-30 Thread Django
#30001: Mark UUIDField.description for translation
-+-
 Reporter:  Prabakaran   |Owner:
  Kumaresshan|  Prabakaran Kumaresshan
 Type:   |   Status:  assigned
  Cleanup/optimization   |
Component:  Database layer   |  Version:  master
  (models, ORM)  |
 Severity:  Normal   |   Resolution:
 Keywords:   | Triage Stage:  Ready for
 |  checkin
Has patch:  1|  Needs documentation:  0
  Needs tests:  0|  Patch needs improvement:  0
Easy pickings:  1|UI/UX:  0
-+-

-- 
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To post to this group, send email to django-updates@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/065.945d1664931c4f4a9b28cb3bf812f86e%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.


Re: [Django] #30000: QuerySet constructed with .union() should raise an exception on unsupported filter() attempt.

2018-11-30 Thread Django
#3: QuerySet constructed with .union() should raise an exception on 
unsupported
filter() attempt.
-+-
 Reporter:  thoha|Owner:  nobody
 Type:  Bug  |   Status:  new
Component:  Database layer   |  Version:  1.11
  (models, ORM)  |
 Severity:  Normal   |   Resolution:
 Keywords:  queryset union   | Triage Stage:  Accepted
Has patch:  0|  Needs documentation:  0
  Needs tests:  0|  Patch needs improvement:  0
Easy pickings:  0|UI/UX:  0
-+-
Changes (by Prabakaran Kumaresshan):

 * cc: Prabakaran Kumaresshan (added)


-- 
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To post to this group, send email to django-updates@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/063.defdc47b13200ecc482d8013d59b0a23%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.


Re: [Django] #27936: Add some clarifications to "Spanning multi-valued relationships"

2018-11-30 Thread Django
#27936: Add some clarifications to "Spanning multi-valued relationships"
--+
 Reporter:  Thomas Güttler|Owner:  nobody
 Type:  Cleanup/optimization  |   Status:  new
Component:  Documentation |  Version:  master
 Severity:  Normal|   Resolution:
 Keywords:| Triage Stage:  Accepted
Has patch:  0 |  Needs documentation:  0
  Needs tests:  0 |  Patch needs improvement:  0
Easy pickings:  0 |UI/UX:  0
--+

Comment (by Claude Paroz):

 WRT the format, +1 for SVG, but *clean* SVG if possible for better
 maintainership. The SVG syntax of the OmniGraffle-generated ones is awful.

-- 
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To post to this group, send email to django-updates@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/065.90138511c65ec10d210e5a76781d3055%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.


Re: [Django] #30001: Mark UUIDField.description for translation

2018-11-30 Thread Django
#30001: Mark UUIDField.description for translation
-+-
 Reporter:  Prabakaran   |Owner:
  Kumaresshan|  Prabakaran Kumaresshan
 Type:   |   Status:  closed
  Cleanup/optimization   |
Component:  Database layer   |  Version:  master
  (models, ORM)  |
 Severity:  Normal   |   Resolution:  fixed
 Keywords:   | Triage Stage:  Ready for
 |  checkin
Has patch:  1|  Needs documentation:  0
  Needs tests:  0|  Patch needs improvement:  0
Easy pickings:  1|UI/UX:  0
-+-
Changes (by Tim Graham ):

 * status:  assigned => closed
 * resolution:   => fixed


Comment:

 In [changeset:"0d724ce91634970cda511e22272df333042e0a04" 0d724ce]:
 {{{
 #!CommitTicketReference repository=""
 revision="0d724ce91634970cda511e22272df333042e0a04"
 Fixed #30001 -- Marked UUIDField.description for translation.
 }}}

-- 
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To post to this group, send email to django-updates@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/065.128c5bb787db06e8110f77ef472f33eb%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.


Re: [Django] #29995: Make the technical error response more legible when using high contrast mode

2018-11-30 Thread Django
#29995: Make the technical error response more legible when using high contrast
mode
-+-
 Reporter:  Matthew Pava |Owner:  Zach
 Type:   |  Garwood
  Cleanup/optimization   |   Status:  assigned
Component:  Error reporting  |  Version:  2.1
 Severity:  Normal   |   Resolution:
 Keywords:   | Triage Stage:  Accepted
Has patch:  0|  Needs documentation:  0
  Needs tests:  0|  Patch needs improvement:  0
Easy pickings:  0|UI/UX:  0
-+-
Changes (by Zach Garwood):

 * Attachment "Mac.png" added.

 MacOS

-- 
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To post to this group, send email to django-updates@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/064.8cff18ecf05a885a3a7c1a8197c80878%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.


Re: [Django] #29995: Make the technical error response more legible when using high contrast mode

2018-11-30 Thread Django
#29995: Make the technical error response more legible when using high contrast
mode
-+-
 Reporter:  Matthew Pava |Owner:  Zach
 Type:   |  Garwood
  Cleanup/optimization   |   Status:  assigned
Component:  Error reporting  |  Version:  2.1
 Severity:  Normal   |   Resolution:
 Keywords:   | Triage Stage:  Accepted
Has patch:  0|  Needs documentation:  0
  Needs tests:  0|  Patch needs improvement:  0
Easy pickings:  0|UI/UX:  0
-+-
Changes (by Zach Garwood):

 * Attachment "Chrome.png" added.

 Chrome extension

-- 
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To post to this group, send email to django-updates@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/064.c585ec5a6e54801158ea73cac8bd3367%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.


Re: [Django] #29995: Make the technical error response more legible when using high contrast mode

2018-11-30 Thread Django
#29995: Make the technical error response more legible when using high contrast
mode
-+-
 Reporter:  Matthew Pava |Owner:  Zach
 Type:   |  Garwood
  Cleanup/optimization   |   Status:  assigned
Component:  Error reporting  |  Version:  2.1
 Severity:  Normal   |   Resolution:
 Keywords:   | Triage Stage:  Accepted
Has patch:  0|  Needs documentation:  0
  Needs tests:  0|  Patch needs improvement:  0
Easy pickings:  0|UI/UX:  0
-+-
Changes (by Zach Garwood):

 * Attachment "Windows.png" added.

 Windows

-- 
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To post to this group, send email to django-updates@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/064.52215cde95e5a90cc1a23957f2a5952e%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.


Re: [Django] #30001: Add translation for UUID Field Description

2018-11-30 Thread Django
#30001: Add translation for UUID Field Description
-+-
 Reporter:  Prabakaran   |Owner:
  Kumaresshan|  Prabakaran Kumaresshan
 Type:   |   Status:  assigned
  Cleanup/optimization   |
Component:  Database layer   |  Version:  master
  (models, ORM)  |
 Severity:  Normal   |   Resolution:
 Keywords:   | Triage Stage:  Ready for
 |  checkin
Has patch:  1|  Needs documentation:  0
  Needs tests:  0|  Patch needs improvement:  0
Easy pickings:  1|UI/UX:  0
-+-
Changes (by Simon Charette):

 * stage:  Accepted => Ready for checkin


-- 
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To post to this group, send email to django-updates@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/065.92fcdcba91266c80311ef9c055963d5b%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.


Re: [Django] #30002: Dynamic model

2018-11-30 Thread Django
#30002: Dynamic model
-+-
 Reporter:  temi4|Owner:  temi4
 Type:  Uncategorized|   Status:  assigned
Component:  Database layer   |  Version:  2.1
  (models, ORM)  |
 Severity:  Normal   |   Resolution:
 Keywords:   | Triage Stage:
 |  Unreviewed
Has patch:  0|  Needs documentation:  0
  Needs tests:  0|  Patch needs improvement:  0
Easy pickings:  0|UI/UX:  0
-+-
Changes (by temi4):

 * owner:  nobody => temi4
 * status:  new => assigned


Old description:

> I have ProjectCategoryCountPartition model
> {{{
> class ProjectCategoryCountPartition(models.Model):
>
> city_slug = models.CharField(verbose_name=_('City slug'),
> max_length=255, db_index=True)
> domain = models.CharField(verbose_name=_('Site name'),
> max_length=255)
> category_id = models.PositiveIntegerField(verbose_name=_('Category
> id'))
> name = models.CharField(verbose_name=_('Category project name'),
> max_length=255)
> count = models.PositiveIntegerField(default=0)
>
> class Meta:
> db_table = "wbtm_projects_category_partition"
>
> class DefaultMeta:
> db_table = "wbtm_projects_category_partition"
> ATTRIBUTE = {
> 'city_slug': models.CharField(verbose_name=_('City slug'),
> max_length=255, db_index=True),
> 'domain': models.CharField(verbose_name=_('Site name'),
> max_length=255),
> 'category_id':
> models.PositiveIntegerField(verbose_name=_('Category id')),
> 'name': models.CharField(verbose_name=_('Category project
> name'), max_length=255),
> 'count': models.PositiveIntegerField(default=0)
> }
>
> @classmethod
> def check_partition(cls, city_slug):
> city_slug = cls.check_city_slug(city_slug)
>
> default_db_table = cls.DefaultMeta.db_table
> new_db_table = "{}_{}".format(default_db_table, city_slug)
>
> if new_db_table in connection.introspection.table_names():
> return True
>
> return False
>
> @classmethod
> def check_city_slug(cls, city_slug):
> city_slug = city_slug.replace('-', '_')
> if not re.match('^[a-zA-Z0-9_]+?$', city_slug):
> raise Exception('Unsupported city_slug')
> return city_slug
>
> @classmethod
> def create_partition(cls, city_slug):
>
> city_slug = cls.check_city_slug(city_slug)
>
> default_db_table = cls.DefaultMeta.db_table
> new_db_table = "{}_{}".format(default_db_table, city_slug)
>
> if cls.check_partition(city_slug):
> return new_db_table
>
> queries = [
> """
> CREATE TABLE {}() INHERITS ({});
> """.format(new_db_table, default_db_table),
> ]
>
> cursor = connection.cursor()
> for query in queries:
> cursor.execute(query)
>
> return new_db_table
>
> @classmethod
> def get_city_model(cls, city_slug):
> city_slug = cls.check_city_slug(city_slug)
> model_name = city_slug.replace('_','')
>
> db_table = cls.create_partition(city_slug)
> attrs = cls.DefaultMeta.ATTRIBUTE.copy()
> attrs.update({
> '__module__': ProjectCategoryCountPartition.__module__,
> 'Meta': type(
> 'Meta',
> (),
> dict(
> # managed=False,
> db_table=db_table,
> )
> ),
> })
>
> return type("ProjectCategoryCountPartition{}".format(model_name),
> (models.Model,), attrs)
> }}}
>
> I write method:
>
> {{{
> for city in ['moskva', 'london']:
>   ProjectCategoryCountPartitionModel =
> ProjectCategoryCountPartition.get_city_model(project_city.slug)
>   print(ProjectCategoryCountPartitionModel.objects.filter(
> city_slug=city,
> domain='site.ru',
> category_id=1,
>   ).query)
>
>   data = {'name': 'Cat1', 'count': 1}
>   ProjectCategoryCountPartitionModel.objects.update_or_create(
> city_slug=city,
> domain='site.ru',
> category_id=1,
> defaults=data
>   )
> }}}
>
> But, Second call ProjectCategoryCountPartitionModel, return error query.
> Example:
>
> {{{
> SELECT "wbtm_projects_category_partition_london"."id",
> "wbtm_projects_category_partition_moskva"."city_slug",
> "wbtm_projects_category_partition_moskva"."domain",
> "wbtm_projects_category_partition_moskva"."category_id",
> 

[Django] #30002: Dynamic model

2018-11-30 Thread Django
#30002: Dynamic model
-+-
   Reporter:  temi4  |  Owner:  nobody
   Type: | Status:  new
  Uncategorized  |
  Component:  Database   |Version:  2.1
  layer (models, ORM)|
   Severity:  Normal |   Keywords:
   Triage Stage: |  Has patch:  0
  Unreviewed |
Needs documentation:  0  |Needs tests:  0
Patch needs improvement:  0  |  Easy pickings:  0
  UI/UX:  0  |
-+-
 I have ProjectCategoryCountPartition model
 {{{
 class ProjectCategoryCountPartition(models.Model):

 city_slug = models.CharField(verbose_name=_('City slug'),
 max_length=255, db_index=True)
 domain = models.CharField(verbose_name=_('Site name'), max_length=255)
 category_id = models.PositiveIntegerField(verbose_name=_('Category
 id'))
 name = models.CharField(verbose_name=_('Category project name'),
 max_length=255)
 count = models.PositiveIntegerField(default=0)

 class Meta:
 db_table = "wbtm_projects_category_partition"

 class DefaultMeta:
 db_table = "wbtm_projects_category_partition"
 ATTRIBUTE = {
 'city_slug': models.CharField(verbose_name=_('City slug'),
 max_length=255, db_index=True),
 'domain': models.CharField(verbose_name=_('Site name'),
 max_length=255),
 'category_id':
 models.PositiveIntegerField(verbose_name=_('Category id')),
 'name': models.CharField(verbose_name=_('Category project
 name'), max_length=255),
 'count': models.PositiveIntegerField(default=0)
 }

 @classmethod
 def check_partition(cls, city_slug):
 city_slug = cls.check_city_slug(city_slug)

 default_db_table = cls.DefaultMeta.db_table
 new_db_table = "{}_{}".format(default_db_table, city_slug)

 if new_db_table in connection.introspection.table_names():
 return True

 return False

 @classmethod
 def check_city_slug(cls, city_slug):
 city_slug = city_slug.replace('-', '_')
 if not re.match('^[a-zA-Z0-9_]+?$', city_slug):
 raise Exception('Unsupported city_slug')
 return city_slug

 @classmethod
 def create_partition(cls, city_slug):

 city_slug = cls.check_city_slug(city_slug)

 default_db_table = cls.DefaultMeta.db_table
 new_db_table = "{}_{}".format(default_db_table, city_slug)

 if cls.check_partition(city_slug):
 return new_db_table

 queries = [
 """
 CREATE TABLE {}() INHERITS ({});
 """.format(new_db_table, default_db_table),
 ]

 cursor = connection.cursor()
 for query in queries:
 cursor.execute(query)

 return new_db_table

 @classmethod
 def get_city_model(cls, city_slug):
 city_slug = cls.check_city_slug(city_slug)
 model_name = city_slug.replace('_','')

 db_table = cls.create_partition(city_slug)
 attrs = cls.DefaultMeta.ATTRIBUTE.copy()
 attrs.update({
 '__module__': ProjectCategoryCountPartition.__module__,
 'Meta': type(
 'Meta',
 (),
 dict(
 # managed=False,
 db_table=db_table,
 )
 ),
 })

 return type("ProjectCategoryCountPartition{}".format(model_name),
 (models.Model,), attrs)
 }}}

 I write method:

 {{{
 for city in ['moskva', 'london']:
   ProjectCategoryCountPartitionModel =
 ProjectCategoryCountPartition.get_city_model(project_city.slug)
   print(ProjectCategoryCountPartitionModel.objects.filter(
 city_slug=city,
 domain='site.ru',
 category_id=1,
   ).query)

   data = {'name': 'Cat1', 'count': 1}
   ProjectCategoryCountPartitionModel.objects.update_or_create(
 city_slug=city,
 domain='site.ru',
 category_id=1,
 defaults=data
   )
 }}}

 But, Second call ProjectCategoryCountPartitionModel, return error query.
 Example:

 {{{
 SELECT "wbtm_projects_category_partition_london"."id",
 "wbtm_projects_category_partition_moskva"."city_slug",
 "wbtm_projects_category_partition_moskva"."domain",
 "wbtm_projects_category_partition_moskva"."category_id",
 "wbtm_projects_category_partition_moskva"."name",
 "wbtm_projects_category_partition_moskva"."count" FROM
 "wbtm_projects_category_partition_london" WHERE
 ("wbtm_projects_category_partition_moskva"."category_id" = 1 AND
 "wbtm_projects_category_partition_moskva"."city_slug" = 'london' AND
 

Re: [Django] #29995: Make the technical error response more legible when using high contrast mode

2018-11-30 Thread Django
#29995: Make the technical error response more legible when using high contrast
mode
-+-
 Reporter:  Matthew Pava |Owner:  Zach
 Type:   |  Garwood
  Cleanup/optimization   |   Status:  assigned
Component:  Error reporting  |  Version:  2.1
 Severity:  Normal   |   Resolution:
 Keywords:   | Triage Stage:  Accepted
Has patch:  0|  Needs documentation:  0
  Needs tests:  0|  Patch needs improvement:  0
Easy pickings:  0|UI/UX:  0
-+-

Comment (by Zach Garwood):

 Matthew, I think there may be an issue with your assistive tool. I took
 screenshots using the built-in high contrast modes for Windows and MacOS,
 as well as the official Chrome extension (see below), and they all seemed
 to handle the pale yellow at the top of the page reasonably well. Matthew,
 is it possible that your tool is misconfigured or possibly buggy?

 All that being said, I looked at the text/background combinations found in
 that template and used an [http://accessible-colors.com/ Accessible
 Colors] tool recommended by the W3C's [https://www.w3.org/TR
 /UNDERSTANDING-WCAG20/Overview.html WCAG] to determine how compliant they
 are:

 * #000 / #ffc (black on pale yellow):

  **Passes AAA**
  Required contrast ratio: 4.5
  Your contrast ratio: 20.43

 * #666 / #ffc (dark grey on pale yellow):

  **Fails AAA**
  Required contrast ratio: 7
  Your contrast ratio: 5.59
  Passes AAA if you change text color to #575757
  New contrast ratio: 7.03

 * #000 / #eee (black on grey):

  **Passes AAA**
  Required contrast ratio: 7
  Your contrast ratio: 18.1

 * #000 / #f6f6f6 (black on light grey):

  **Passes AAA**
  Required contrast ratio: 7
  Your contrast ratio: 19.43

 * #666 / #eee (dark grey on light grey):

  **Fails AAA**
  Required contrast ratio: 7
  Your contrast ratio: 4.95
  Passes AAA if you change text color to #4F4F4F
  New contrast ratio: 7.06

 * #505050 / #dfdfdf (dark grey on another dark grey):

  **Fails AAA**
  Required contrast ratio: 7
  Your contrast ratio: 6.05
  Passes AAA if you change background color to #EFEFEF
  New contrast ratio: 7.01
  OR
  Passes AAA if you change text color to #464646
  New contrast ratio: 7.08

 I've submitted a [https://github.com/django/django/pull/10712 PR] to
 address the failing low contrast color combinations.

 Screenshots of various high contrast modes:
 * Windows:
 [[Image(https://code.djangoproject.com/raw-
 attachment/ticket/29995/Windows.png)]]
 * MacOS:
 [[Image(https://code.djangoproject.com/raw-
 attachment/ticket/29995/Mac.png)]]
 * Chrome extension:
 [[Image(https://code.djangoproject.com/raw-
 attachment/ticket/29995/Chrome.png)]]

-- 
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To post to this group, send email to django-updates@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/064.6f14bcdfe8546db068a44f207219c031%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.


Re: [Django] #29995: Make the technical error response more legible when using high contrast mode

2018-11-30 Thread Django
#29995: Make the technical error response more legible when using high contrast
mode
-+-
 Reporter:  Matthew Pava |Owner:  Zach
 Type:   |  Garwood
  Cleanup/optimization   |   Status:  assigned
Component:  Error reporting  |  Version:  2.1
 Severity:  Normal   |   Resolution:
 Keywords:   | Triage Stage:  Accepted
Has patch:  0|  Needs documentation:  0
  Needs tests:  0|  Patch needs improvement:  0
Easy pickings:  0|UI/UX:  0
-+-

Comment (by Matthew Pava):

 I should have done more thorough checking.  The debug page does in fact
 produce legible results in the browser but not in Outlook 2010.
 Apparently, Outlook 2010 has issues with high-contrast mode.  I was able
 to change to High-Contrast Mode 2 to make the admin email legible in
 Outlook 2010.
 Thanks, @Zach!

-- 
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To post to this group, send email to django-updates@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/064.065db63085b1e576f3bfff0d7ab0139c%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.


Re: [Django] #30002: Dynamic model

2018-11-30 Thread Django
#30002: Dynamic model
-+-
 Reporter:  temi4|Owner:  (none)
 Type:  Uncategorized|   Status:  closed
Component:  Database layer   |  Version:  2.1
  (models, ORM)  |
 Severity:  Normal   |   Resolution:  invalid
 Keywords:   | Triage Stage:
 |  Unreviewed
Has patch:  0|  Needs documentation:  0
  Needs tests:  0|  Patch needs improvement:  0
Easy pickings:  0|UI/UX:  0
-+-
Changes (by Simon Charette):

 * status:  new => closed
 * resolution:   => invalid


Comment:

 While partially documented in the wiki dynamic models are not officially
 supported.

 Please use TicketClosingReasons/UseSupportChannels to help you figure out
 if and how Django is at fault as this issue tracker is used to keep track
 of bugs and feature requests and isn't a second tier support channel.

-- 
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To post to this group, send email to django-updates@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/063.52626f14cc4200097fcd4e04206ba568%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.


Re: [Django] #29205: MultiValueField ignores a required value of a sub field

2018-11-30 Thread Django
#29205: MultiValueField ignores a required value of a sub field
+
 Reporter:  Takayuki Hirai  |Owner:  nobody
 Type:  Bug |   Status:  new
Component:  Forms   |  Version:  1.11
 Severity:  Normal  |   Resolution:
 Keywords:  | Triage Stage:  Accepted
Has patch:  0   |  Needs documentation:  0
  Needs tests:  0   |  Patch needs improvement:  0
Easy pickings:  0   |UI/UX:  0
+

Comment (by jhrr):

 Adding something like this certainly does cause some failures in test
 cases where the `required` string has been disappeared from the emitted
 `HTML`. Looking into further isolating some better test cases.


 {{{
 def build_widget_attrs(self, attrs, widget=None):
 widget = widget or self.field.widget
 attrs = dict(attrs)  # Copy attrs to avoid modifying the argument.
 if widget.use_required_attribute(self.initial) and self.field.required
 and self.form.use_required_attribute:
 if hasattr(self.field, 'require_all_fields'):
 if not widget.is_required and not
 self.field.require_all_fields:
 attrs['required'] = False
 else:
 attrs['required'] = True
 if self.field.disabled:
 attrs['disabled'] = True
 return attrs
 }}}

-- 
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To post to this group, send email to django-updates@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/064.5eaf715aabcf21d5f99f5518a1120ce4%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.


Re: [Django] #27936: Add some clarifications to "Spanning multi-valued relationships"

2018-11-30 Thread Django
#27936: Add some clarifications to "Spanning multi-valued relationships"
--+
 Reporter:  Thomas Güttler|Owner:  nobody
 Type:  Cleanup/optimization  |   Status:  new
Component:  Documentation |  Version:  master
 Severity:  Normal|   Resolution:
 Keywords:| Triage Stage:  Accepted
Has patch:  0 |  Needs documentation:  0
  Needs tests:  0 |  Patch needs improvement:  0
Easy pickings:  0 |UI/UX:  0
--+
Changes (by Zach Borboa):

 * cc: Zach Borboa (added)


-- 
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To post to this group, send email to django-updates@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/065.956889f3da6a292e8fccd08d10864810%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.


Re: [Django] #28643: Complete the ORM Function Library

2018-11-30 Thread Django
#28643: Complete the ORM Function Library
-+-
 Reporter:  Matthew Pava |Owner:  JunyiJ
 Type:  New feature  |   Status:  assigned
Component:  Database layer   |  Version:  master
  (models, ORM)  |
 Severity:  Normal   |   Resolution:
 Keywords:   | Triage Stage:  Accepted
Has patch:  1|  Needs documentation:  0
  Needs tests:  0|  Patch needs improvement:  1
Easy pickings:  0|UI/UX:  0
-+-

Comment (by Tim Graham ):

 In [changeset:"c3bbf1fd4cc73cf0f6109c81f2e44d44a4e25a0b" c3bbf1fd]:
 {{{
 #!CommitTicketReference repository=""
 revision="c3bbf1fd4cc73cf0f6109c81f2e44d44a4e25a0b"
 Refs #28643 -- Skipped ATan2() workaround on SpatiaLite 5+.
 }}}

-- 
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To post to this group, send email to django-updates@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/064.b7cc3943936fefc7d4edf9539baee837%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.


[Django] #29999: Include overriding admin site to tutorial

2018-11-30 Thread Django
#2: Include overriding admin site to tutorial
+
   Reporter:  stinovlas |  Owner:  nobody
   Type:  Cleanup/optimization  | Status:  new
  Component:  Documentation |Version:  2.1
   Severity:  Normal|   Keywords:
   Triage Stage:  Unreviewed|  Has patch:  0
Needs documentation:  0 |Needs tests:  0
Patch needs improvement:  0 |  Easy pickings:  1
  UI/UX:  0 |
+
 Django 2.1 introduced ability to
 [https://docs.djangoproject.com/en/2.1/ref/contrib/admin/#overriding-
 default-admin-site override default admin site], which is a great feature.
 In the [https://docs.djangoproject.com/en/2.1/intro/tutorial07/#customize-
 the-admin-look-and-feel tutorial], change of the heading is achieved by
 overriding templates. I'm aware that it's done so because of teaching new
 users how to override templates (as stated in the tutorial itself), but I
 think that ability to override default admin should be mentioned in this
 place as well.

 In the spirit of ''"There should be one – and preferably only one –
 obvious way to do it."'' I think that overriding the default admin site is
 the obvious way to customize django admin site from now on and therefore,
 it should be mentioned in the tutorial.

 **Currently, the documentation states (this paragraph has not been changed
 at least from Django 1.9):**

 * We use this approach to teach you how to override templates. In an
 actual project, you would probably use the
 
[https://docs.djangoproject.com/en/2.1/ref/contrib/admin/#django.contrib.admin.AdminSite.site_header
 django.contrib.admin.AdminSite.site_header] attribute to more easily make
 this particular customization.

 **I propose to change this paragraph thus:**

 * We use this approach to teach you how to override templates. In an
 actual project, you would probably
 [https://docs.djangoproject.com/en/2.1/ref/contrib/admin/#overriding-
 default-admin-site override the default admin site] and use
 
[https://docs.djangoproject.com/en/2.1/ref/contrib/admin/#django.contrib.admin.AdminSite.site_header
 django.contrib.admin.AdminSite.site_header] attribute to more easily make
 this particular customization.

-- 
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To post to this group, send email to django-updates@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/052.ade7f7c2d476a66453945f215b8a6fc8%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.


Re: [Django] #30000: Passing QuerySet constructed with .union() causes ModelMultipleChoiceField to return wrong values

2018-11-30 Thread Django
#3: Passing QuerySet constructed with .union() causes 
ModelMultipleChoiceField
to return wrong values
-+-
 Reporter:  thoha|Owner:  nobody
 Type:  Uncategorized|   Status:  new
Component:  Forms|  Version:  1.11
 Severity:  Normal   |   Resolution:
 Keywords:  queryset, union, | Triage Stage:
  forms  |  Unreviewed
Has patch:  0|  Needs documentation:  0
  Needs tests:  0|  Patch needs improvement:  0
Easy pickings:  0|UI/UX:  0
-+-
Changes (by thoha):

 * keywords:   => queryset, union, forms


-- 
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To post to this group, send email to django-updates@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/063.6d975e168ba406b6a4c134913cba6600%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.


[Django] #30000: Passing QuerySet constructed with .union() causes ModelMultipleChoiceField to return wrong values

2018-11-30 Thread Django
#3: Passing QuerySet constructed with .union() causes 
ModelMultipleChoiceField
to return wrong values
-+
   Reporter:  thoha  |  Owner:  nobody
   Type:  Uncategorized  | Status:  new
  Component:  Forms  |Version:  1.11
   Severity:  Normal |   Keywords:
   Triage Stage:  Unreviewed |  Has patch:  0
Needs documentation:  0  |Needs tests:  0
Patch needs improvement:  0  |  Easy pickings:  0
  UI/UX:  0  |
-+
 I have a form that displays large lists of selectable records using
 ModelMultipleChoiceFields. These fields need to show a predetermined list
 of records, obtained through some database queries performed within the
 Form's class __init__ block.
 The QuerySet required is constructed by reaching through a few ForeignKey
 relationships to retrieve the required records and then using the .union()
 method to assemble the QuerySet.
 e.g.:

 {{{
 # Retrieve original record:
  base = BaseModel.objects.filter(source_name=source_name).first()
 # Get related record via ForeignKey relationship:
 related_record = base.related_record
 # related_record.other_related_things has ManyToMany relationship to
 another Model (one or more records).
 # So get them:
 other_related_things = related_record.other_related_things.all()
 # Loop through these:
 union_queryset = None
 for other_related_thing in other_related_things:
 # Each other_related_thing has a set of SelectableRecords associated
 with it, via a ForeignKey relationship from the latter model to the former
 one. This gets that QuerySet:
 other_related_thing_queryset =
 other_related_thing.selectablerecords_set.all()
 # Build union_queryset:
 if union_queryset is None:
 union_queryset = other_related_thing_queryset
 else:
 union_queryset =
 union_queryset_object.union(other_related_thing_queryset)
 # The resulting union_queryset is a unified queryset containing
 all of the required fields.
 # If only one other_related_thing exists, the result of evaluating
 the union_queryset QuerySet ought to be the
 # same as the result of evaluating SelectableRecords.objects.all()
 }}}

 However, when I pass the union_queryset to my ModelMultipleChoiceFields,
 **validating the form returns all of the records contained in
 union_queryset instead of the records selected on the form**. The form
 displays correctly.

 The code used for this is:

 {{{
 self.fields['selectable_records'] =
 forms.ModelMultipleChoiceField(queryset=union_queryset, required=False,
 label='Selectable
 records',
 widget=forms.CheckboxSelectMultiple)
 }}}

 Do take note that the documentation for the .union() method
 ([https://docs.djangoproject.com/en/2.1/ref/models/querysets/#union here])
 indicates there are some limits to the QuerySet returned, and I assume my
 problem has to do with this.

-- 
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To post to this group, send email to django-updates@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/048.0b0857e9de474f9e80a409459afe10b5%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.


Re: [Django] #30000: Passing QuerySet constructed with .union() causes ModelMultipleChoiceField to return wrong values

2018-11-30 Thread Django
#3: Passing QuerySet constructed with .union() causes 
ModelMultipleChoiceField
to return wrong values
---+--
 Reporter:  thoha  |Owner:  nobody
 Type:  Uncategorized  |   Status:  new
Component:  Forms  |  Version:  1.11
 Severity:  Normal |   Resolution:
 Keywords: | Triage Stage:  Unreviewed
Has patch:  0  |  Needs documentation:  0
  Needs tests:  0  |  Patch needs improvement:  0
Easy pickings:  0  |UI/UX:  0
---+--
Description changed by thoha:

Old description:

> I have a form that displays large lists of selectable records using
> ModelMultipleChoiceFields. These fields need to show a predetermined list
> of records, obtained through some database queries performed within the
> Form's class __init__ block.
> The QuerySet required is constructed by reaching through a few ForeignKey
> relationships to retrieve the required records and then using the
> .union() method to assemble the QuerySet.
> e.g.:
>
> {{{
> # Retrieve original record:
>  base = BaseModel.objects.filter(source_name=source_name).first()
> # Get related record via ForeignKey relationship:
> related_record = base.related_record
> # related_record.other_related_things has ManyToMany relationship to
> another Model (one or more records).
> # So get them:
> other_related_things = related_record.other_related_things.all()
> # Loop through these:
> union_queryset = None
> for other_related_thing in other_related_things:
> # Each other_related_thing has a set of SelectableRecords associated
> with it, via a ForeignKey relationship from the latter model to the
> former one. This gets that QuerySet:
> other_related_thing_queryset =
> other_related_thing.selectablerecords_set.all()
> # Build union_queryset:
> if union_queryset is None:
> union_queryset = other_related_thing_queryset
> else:
> union_queryset =
> union_queryset_object.union(other_related_thing_queryset)
> # The resulting union_queryset is a unified queryset containing
> all of the required fields.
> # If only one other_related_thing exists, the result of
> evaluating the union_queryset QuerySet ought to be the
> # same as the result of evaluating
> SelectableRecords.objects.all()
> }}}
>
> However, when I pass the union_queryset to my ModelMultipleChoiceFields,
> **validating the form returns all of the records contained in
> union_queryset instead of the records selected on the form**. The form
> displays correctly.
>
> The code used for this is:
>
> {{{
> self.fields['selectable_records'] =
> forms.ModelMultipleChoiceField(queryset=union_queryset, required=False,
> label='Selectable
> records',
> widget=forms.CheckboxSelectMultiple)
> }}}
>
> Do take note that the documentation for the .union() method
> ([https://docs.djangoproject.com/en/2.1/ref/models/querysets/#union
> here]) indicates there are some limits to the QuerySet returned, and I
> assume my problem has to do with this.

New description:

 I have a form that displays large lists of selectable records using
 ModelMultipleChoiceFields. These fields need to show a predetermined list
 of records, obtained through some database queries performed within the
 Form's class __init__ block.
 The QuerySet required is constructed by reaching through a few ForeignKey
 relationships to retrieve the required records and then using the .union()
 method to assemble the QuerySet.
 e.g.:

 {{{
 # Retrieve original record:
  base = BaseModel.objects.filter(source_name=source_name).first()
 # Get related record via ForeignKey relationship:
 related_record = base.related_record
 # related_record.other_related_things has ManyToMany relationship to
 another Model (one or more records).
 # So get them:
 other_related_things = related_record.other_related_things.all()
 # Loop through these:
 union_queryset = None
 for other_related_thing in other_related_things:
 # Each other_related_thing has a set of SelectableRecords associated
 with it, via a ForeignKey relationship from the latter model to the former
 one. This gets that QuerySet:
 other_related_thing_queryset =
 other_related_thing.selectablerecords_set.all()
 # Build union_queryset:
 if union_queryset is None:
 union_queryset = other_related_thing_queryset
 else:
 union_queryset =
 union_queryset_object.union(other_related_thing_queryset)
 # The resulting union_queryset is a unified queryset containing
 all of the required fields.
 # If only one other_related_thing exists, the result of evaluating
 the union_queryset QuerySet ought to be the
 # same as the result of evaluating 

Re: [Django] #29998: pk setup for MTI to parent get confused by multiple OneToOne references.

2018-11-30 Thread Django
#29998: pk setup for MTI to parent get confused by multiple OneToOne references.
-+-
 Reporter:  Mārtiņš Šulcs|Owner:  nobody
 Type:  Bug  |   Status:  new
Component:  Database layer   |  Version:  2.1
  (models, ORM)  |
 Severity:  Normal   |   Resolution:
 Keywords:   | Triage Stage:  Accepted
Has patch:  0|  Needs documentation:  0
  Needs tests:  0|  Patch needs improvement:  0
Easy pickings:  0|UI/UX:  0
-+-

Comment (by Mārtiņš Šulcs):

 Replying to [comment:2 Mārtiņš Šulcs]:
 > Replying to [comment:1 Simon Charette]:
 >
 > It does go away primary_key.
 > Why is parent_link even necessary in that case? Having pk OneToOne with
 to MTI child should imply it's parent link.
 I have an update. The warning goes away with primary_key, but model itself
 is still broken(complains about document_ptr_id not populated) unless
 field order is correct.

-- 
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To post to this group, send email to django-updates@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/065.9bcb30dd35a4023b7f3f2cb01bd4e62d%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.


Re: [Django] #29997: Allow combining SearchQuerys with different configs

2018-11-30 Thread Django
#29997: Allow combining SearchQuerys with different configs
-+-
 Reporter:  Jaap Roes|Owner:  Jaap Roes
 Type:  Bug  |   Status:  assigned
Component:  contrib.postgres |  Version:  1.11
 Severity:  Normal   |   Resolution:
 Keywords:   | Triage Stage:  Ready for
 |  checkin
Has patch:  1|  Needs documentation:  0
  Needs tests:  0|  Patch needs improvement:  0
Easy pickings:  0|UI/UX:  0
-+-

Comment (by Jaap Roes):

 fwiw, I think the `config` equality check was copied from the
 implementation of `SearchVectorCombinable`. The validity of that check
 there is also questioned by at least one person (see ticket #28528)

-- 
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To post to this group, send email to django-updates@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/063.b46018b64aaa0bb15d97f7a5ce02f080%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.


Re: [Django] #27936: Add some clarifications to "Spanning multi-valued relationships"

2018-11-30 Thread Django
#27936: Add some clarifications to "Spanning multi-valued relationships"
--+
 Reporter:  Thomas Güttler|Owner:  nobody
 Type:  Cleanup/optimization  |   Status:  new
Component:  Documentation |  Version:  master
 Severity:  Normal|   Resolution:
 Keywords:| Triage Stage:  Accepted
Has patch:  0 |  Needs documentation:  0
  Needs tests:  0 |  Patch needs improvement:  0
Easy pickings:  0 |UI/UX:  0
--+

Comment (by Josh Smeaton):

 My objection was not to any diagram, but to that one specifically. I think
 the right diagram definitely would help, but it should clearly show items
 that match and items that don't match for each query type, perhaps with
 colors. Bonus points if it's able to call out the duplicates problem, but
 that could be documented separately.

 I don't personally mind which technology choice is used.

-- 
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To post to this group, send email to django-updates@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/065.0ba94250388b6afc7d8aa1db32a02ee3%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.


Re: [Django] #30000: Passing QuerySet constructed with .union() causes ModelMultipleChoiceField to return wrong values

2018-11-30 Thread Django
#3: Passing QuerySet constructed with .union() causes 
ModelMultipleChoiceField
to return wrong values
-+-
 Reporter:  thoha|Owner:  nobody
 Type:  Uncategorized|   Status:  new
Component:  Forms|  Version:  1.11
 Severity:  Normal   |   Resolution:
 Keywords:  queryset, union, | Triage Stage:
  forms  |  Unreviewed
Has patch:  0|  Needs documentation:  0
  Needs tests:  0|  Patch needs improvement:  0
Easy pickings:  0|UI/UX:  0
-+-

Comment (by thoha):

 After some further testing it appears the unexpected behaviour comes from
 the fact that UNION querysets cannot be filtered, which the
 ModelMultipleChoiceField apparently does out of sight. Still, I believe
 that the observed behaviour is undesired, and the field should either
 accept the union queryset and work properly, or raise an exception if a
 union queryset is passed.

 I also found that using

 {{{
 union_queryset =
 
SelectableRecords.objects.filter(other_related_thing_name__in=other_related_things)
 }}}

 instead of the for-loop results in a queryset that actually works properly
 with the ModelMultipleChoiceField. Based on
 [https://stackoverflow.com/questions/50638442/django-queryset-union-
 return-broken-queryset-filter-and-get-return-every this StackOverflow
 question].

-- 
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To post to this group, send email to django-updates@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/063.f9e6fa2fbc30e72932f955d8ff27f494%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.


Re: [Django] #30000: Passing QuerySet constructed with .union() causes ModelMultipleChoiceField to return wrong values

2018-11-30 Thread Django
#3: Passing QuerySet constructed with .union() causes 
ModelMultipleChoiceField
to return wrong values
-+-
 Reporter:  thoha|Owner:  nobody
 Type:  Bug  |   Status:  new
Component:  Forms|  Version:  1.11
 Severity:  Normal   |   Resolution:
 Keywords:  queryset, union, | Triage Stage:
  forms  |  Unreviewed
Has patch:  0|  Needs documentation:  0
  Needs tests:  0|  Patch needs improvement:  0
Easy pickings:  0|UI/UX:  0
-+-
Changes (by thoha):

 * type:  Uncategorized => Bug


-- 
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To post to this group, send email to django-updates@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/063.b4d833bdd409e8976a0107cf0721dc86%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.


Re: [Django] #29999: Include overriding admin site to tutorial

2018-11-30 Thread Django
#2: Include overriding admin site to tutorial
-+-
 Reporter:  Jan Musílek  |Owner:  nobody
 Type:   |   Status:  new
  Cleanup/optimization   |
Component:  Documentation|  Version:  2.1
 Severity:  Normal   |   Resolution:
 Keywords:   | Triage Stage:
 |  Unreviewed
Has patch:  0|  Needs documentation:  0
  Needs tests:  0|  Patch needs improvement:  0
Easy pickings:  1|UI/UX:  0
-+-

Comment (by Tim Graham):

 I don't see overriding the admin site as a necessary requirement.
 `site.site_header = '...'` still works fine.

-- 
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To post to this group, send email to django-updates@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/067.cd80a7bc93242457ddd5f1fb993d0d32%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.


Re: [Django] #27936: Add some clarifications to "Spanning multi-valued relationships"

2018-11-30 Thread Django
#27936: Add some clarifications to "Spanning multi-valued relationships"
--+
 Reporter:  Thomas Güttler|Owner:  nobody
 Type:  Cleanup/optimization  |   Status:  new
Component:  Documentation |  Version:  master
 Severity:  Normal|   Resolution:
 Keywords:| Triage Stage:  Accepted
Has patch:  0 |  Needs documentation:  0
  Needs tests:  0 |  Patch needs improvement:  0
Easy pickings:  0 |UI/UX:  0
--+

Comment (by Adam (Chainz) Johnson):

 Coming here from django-developers post

 I side with Josh that the proposed diagram probably isn't the best, and if
 we were to include one, another could explain the problem better. I find
 the existing text fairly clear - I've forgotten and re-learned this
 distinction from the docs a few times.

 On technology, graphviz isn't the most flexible as it can only do graphs.
 Other diagrams we might add to the docs in future might need more
 flexibility, so I think SVG is a better choice. There's nothing stopping
 the first version of an SVG diagram being generated with graphviz.

-- 
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To post to this group, send email to django-updates@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/065.9adb67b18475271a4864e1d3cdad802b%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.


Re: [Django] #30000: QuerySet constructed with .union() should raise an exception on unsupported filter() attempt. (was: Passing QuerySet constructed with .union() causes ModelMultipleChoiceField to r

2018-11-30 Thread Django
#3: QuerySet constructed with .union() should raise an exception on 
unsupported
filter() attempt.
-+-
 Reporter:  thoha|Owner:  nobody
 Type:  Bug  |   Status:  new
Component:  Database layer   |  Version:  1.11
  (models, ORM)  |
 Severity:  Normal   |   Resolution:
 Keywords:  queryset union   | Triage Stage:  Accepted
Has patch:  0|  Needs documentation:  0
  Needs tests:  0|  Patch needs improvement:  0
Easy pickings:  0|UI/UX:  0
-+-
Changes (by Simon Charette):

 * keywords:  queryset, union, forms => queryset union
 * component:  Forms => Database layer (models, ORM)
 * stage:  Unreviewed => Accepted


-- 
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To post to this group, send email to django-updates@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/063.34af6c21c955d7371cfa53704c96c316%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.


Re: [Django] #29205: MultiValueField ignores a required value of a sub field

2018-11-30 Thread Django
#29205: MultiValueField ignores a required value of a sub field
+
 Reporter:  Takayuki Hirai  |Owner:  nobody
 Type:  Bug |   Status:  new
Component:  Forms   |  Version:  1.11
 Severity:  Normal  |   Resolution:
 Keywords:  | Triage Stage:  Accepted
Has patch:  0   |  Needs documentation:  0
  Needs tests:  0   |  Patch needs improvement:  0
Easy pickings:  0   |UI/UX:  0
+

Comment (by jhrr):

 Possible culprit?

 
https://github.com/django/django/blob/b9cf764be62e77b4777b3a75ec256f6209a57671/django/forms/boundfield.py#L221

-- 
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To post to this group, send email to django-updates@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/064.51a7e65ad69a683afbca16e27892f21c%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.


Re: [Django] #30002: Dynamic model

2018-11-30 Thread Django
#30002: Dynamic model
-+-
 Reporter:  temi4|Owner:  (none)
 Type:  Uncategorized|   Status:  new
Component:  Database layer   |  Version:  2.1
  (models, ORM)  |
 Severity:  Normal   |   Resolution:
 Keywords:   | Triage Stage:
 |  Unreviewed
Has patch:  0|  Needs documentation:  0
  Needs tests:  0|  Patch needs improvement:  0
Easy pickings:  0|UI/UX:  0
-+-
Changes (by temi4):

 * owner:  temi4 => (none)
 * status:  assigned => new


-- 
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To post to this group, send email to django-updates@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/063.d4bfe7154a7039f5c8f3e793f2cf40da%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.


Re: [Django] #29205: MultiValueField ignores a required value of a sub field

2018-11-30 Thread Django
#29205: MultiValueField ignores a required value of a sub field
+
 Reporter:  Takayuki Hirai  |Owner:  nobody
 Type:  Bug |   Status:  new
Component:  Forms   |  Version:  1.11
 Severity:  Normal  |   Resolution:
 Keywords:  | Triage Stage:  Accepted
Has patch:  0   |  Needs documentation:  0
  Needs tests:  0   |  Patch needs improvement:  0
Easy pickings:  0   |UI/UX:  0
+

Comment (by jhrr):

 I also bumped into this a while back during a project and promptly forgot
 about it. In my case I fixed it by overrriding `render` like so:

 {{{
 def render(self, name, value, attrs=None):
 if self.is_localized:
 for widget in self.widgets:
 widget.is_localized = self.is_localized
 if not isinstance(value, list):
 value = self.decompress(value)
 output = []
 final_attrs = self.build_attrs(attrs)
 id_ = final_attrs.get("id")
 for i, widget in enumerate(self.widgets):
 try:
 widget_value = value[i]
 except IndexError:
 widget_value = None
 if id_:
 final_attrs = dict(final_attrs, id="%s_%s" % (id_, i))
 final_attrs["required"] = widget.is_required  # ADDED
 output.append(widget.render(name + "_%s" % i, widget_value,
 final_attrs))
 return mark_safe(self.format_output(output))
 }}}

 Whether that is optimal however I wasn't able to fully ascertain.

-- 
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To post to this group, send email to django-updates@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/064.17d89d99add25043c9964f8c6c425f16%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.


Re: [Django] #29997: Allow combining SearchQuerys with different configs

2018-11-30 Thread Django
#29997: Allow combining SearchQuerys with different configs
-+-
 Reporter:  Jaap Roes|Owner:  Jaap Roes
 Type:  Bug  |   Status:  closed
Component:  contrib.postgres |  Version:  1.11
 Severity:  Normal   |   Resolution:  fixed
 Keywords:   | Triage Stage:  Ready for
 |  checkin
Has patch:  1|  Needs documentation:  0
  Needs tests:  0|  Patch needs improvement:  0
Easy pickings:  0|UI/UX:  0
-+-
Changes (by Tim Graham ):

 * status:  assigned => closed
 * resolution:   => fixed


Comment:

 In [changeset:"8a1a9194686881e32d0e3aed52d7f4150238530c" 8a1a9194]:
 {{{
 #!CommitTicketReference repository=""
 revision="8a1a9194686881e32d0e3aed52d7f4150238530c"
 Fixed #29997 -- Allowed combining SearchQuerys with different configs.

 Seems to be a needless restriction in
 978a00e39fee25cfa99065285b0de88366710fad.
 }}}

-- 
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To post to this group, send email to django-updates@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/063.0a20653aa749cf280ab51ad9075be76a%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.


[Django] #30001: Add translation for UUID Field Description

2018-11-30 Thread Django
#30001: Add translation for UUID Field Description
--+
   Reporter:  Prabakaran Kumaresshan  |  Owner:  nobody
   Type:  Cleanup/optimization| Status:  new
  Component:  Documentation   |Version:  master
   Severity:  Normal  |   Keywords:
   Triage Stage:  Unreviewed  |  Has patch:  1
Needs documentation:  0   |Needs tests:  0
Patch needs improvement:  0   |  Easy pickings:  1
  UI/UX:  0   |
--+
 UUID Field's description is missing translation

 
https://github.com/django/django/blob/master/django/db/models/fields/__init__.py#L2294

-- 
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To post to this group, send email to django-updates@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/050.d625fd651ba96772fafdf281a7c156cc%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.


Re: [Django] #30001: Add translation for UUID Field Description

2018-11-30 Thread Django
#30001: Add translation for UUID Field Description
-+-
 Reporter:  Prabakaran   |Owner:
  Kumaresshan|  Prabakaran Kumaresshan
 Type:   |   Status:  assigned
  Cleanup/optimization   |
Component:  Documentation|  Version:  master
 Severity:  Normal   |   Resolution:
 Keywords:   | Triage Stage:
 |  Unreviewed
Has patch:  1|  Needs documentation:  0
  Needs tests:  0|  Patch needs improvement:  0
Easy pickings:  1|UI/UX:  0
-+-
Changes (by Prabakaran Kumaresshan):

 * owner:  nobody => Prabakaran Kumaresshan
 * status:  new => assigned


Comment:

 [https://github.com/django/django/pull/10710 PR]

-- 
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To post to this group, send email to django-updates@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/065.9131eec1857d195c9669fc7b65bef714%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.


Re: [Django] #30001: Add translation for UUID Field Description

2018-11-30 Thread Django
#30001: Add translation for UUID Field Description
-+-
 Reporter:  Prabakaran   |Owner:
  Kumaresshan|  Prabakaran Kumaresshan
 Type:   |   Status:  assigned
  Cleanup/optimization   |
Component:  Database layer   |  Version:  master
  (models, ORM)  |
 Severity:  Normal   |   Resolution:
 Keywords:   | Triage Stage:  Accepted
Has patch:  1|  Needs documentation:  0
  Needs tests:  0|  Patch needs improvement:  0
Easy pickings:  1|UI/UX:  0
-+-
Changes (by Simon Charette):

 * component:  Documentation => Database layer (models, ORM)
 * stage:  Unreviewed => Accepted


-- 
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To post to this group, send email to django-updates@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/065.27c6af1fcd9d76529e19e05e76d2497a%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.