Hello,

Storing a comma-separated list of integers in a text field in a SQL database is 
a really bad anti-pattern. That's a sufficient reason for Django to stop 
condoning it, which it did by providing that functionality out of the box.

It was widely accepted (at least among the core team) that 
CommaSeparatedIntegerField shouldn't be a core Django field because it's both 
weird and specialized. That's why no one found useful to write down the reasons,

There's a comment saying that CSIF doesn't belong to core Django since the 
magic-removal refactor, just over 11 years ago:
https://github.com/django/django/commit/f69cf70ed813a8cd7e1f963a14ae39103e8d5265#diff-bf776a3b8e5dbfac2432015825ef8afeR393

It already existed when Django was open sourced, making it hard to trace why it 
was introduced — likely to support some sort of one-to-many field?
https://github.com/django/django/commit/ed114e1510#diff-5b08569363cc72ee12188500cecddf69R731

I hope this helps,

-- 
Aymeric.



> On 15 May 2017, at 16:14, Donald Morrone <lar...@gmail.com> wrote:
> 
> I see that CommaSeparatedIntegerField is being deprecated, but I don't see 
> why. I know I'm apparently late to the discussion, but after it 16 months I 
> don't see any actual reasoning.
> 
> I recognize that a CharField with the validator is functionally equivalent, 
> but it takes a very handy field type and makes it completely inaccessible and 
> invisible to new users.
> 
> I see this discussion: 
> https://groups.google.com/forum/#!topic/django-developers/wfp9qNpNpaQ/discussion
>  which lead to this ticket: https://code.djangoproject.com/ticket/26154
> 
> Both links focus on the how rather than the why. 
> 
> I disagree with the decision overall, but I'm more concerned that it just 
> kind of slipped through without anyone really thinking about it.
> 
> (To be clear, I don't begrudge Tim Graham, he was right to propose it, but 
> then there was no discussion on it at all that I saw)
> 
> -- 
> You received this message because you are subscribed to the Google Groups 
> "Django developers (Contributions to Django itself)" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to django-developers+unsubscr...@googlegroups.com 
> <mailto:django-developers+unsubscr...@googlegroups.com>.
> To post to this group, send email to django-developers@googlegroups.com 
> <mailto:django-developers@googlegroups.com>.
> Visit this group at https://groups.google.com/group/django-developers 
> <https://groups.google.com/group/django-developers>.
> To view this discussion on the web visit 
> https://groups.google.com/d/msgid/django-developers/3d54fb68-5548-424f-8806-103c026b5922%40googlegroups.com
>  
> <https://groups.google.com/d/msgid/django-developers/3d54fb68-5548-424f-8806-103c026b5922%40googlegroups.com?utm_medium=email&utm_source=footer>.
> For more options, visit https://groups.google.com/d/optout 
> <https://groups.google.com/d/optout>.

-- 
You received this message because you are subscribed to the Google Groups 
"Django developers  (Contributions to Django itself)" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-developers+unsubscr...@googlegroups.com.
To post to this group, send email to django-developers@googlegroups.com.
Visit this group at https://groups.google.com/group/django-developers.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-developers/FF0E8034-5BE7-4A47-8548-F0DE501F6940%40polytechnique.org.
For more options, visit https://groups.google.com/d/optout.

Reply via email to