Hi Nicholas,

Thanks for the proposal. It's a good start, and with a little tuning, I
think it would make a great project for the GSoC.

As as noted on the other thread, there's a lot of overlap here with
floppyforms, and with a previous GSoC project to make forms customisable.

HTML5 widgets and Flexible MultipleChoiceField are both ideas worth
pursuing. Personally, I think "Fieldsets for all forms" is worth it too,
but I can see in the other thread that Carl disagrees, so it's probably
worth leaving off. I agree with Carl that extra as_* points are needed.

Here's three other form-related areas that I think are worth pursuing.

 * Making it easy to pass in arguments to forms on a formset.

Django doesn't use thread locals to store the current request - we
encourage users to follow good architecture and pass in arguments as they
are needed, rather than relying on globals. This is an easy argument to
make for forms - you just modify the constructor. But it's not as easy for
form sets. Formsets have methods to construct their subforms, but they
don't provide an API for instantiating those forms - so if you want to pass
the request object (or any other context) down to forms, you've got a
problem. It's possible, just messy. Similarly, if you want to pass
arguments in to save(), it's easy to override the save() method on a form,
but not to get a formsets' save() method to pass down to the form's save().

 * Form containers

This is ticket #18830. The use case is simple -- Form Wizards allow 1 form
or formset per page, but don't allow for a combined form + formset, or
closely linked forms. There's a need for a wrapper class. There's an
analogous need for dealing with class-based views -- the form-based CBVs
allow for a single form object, but not a combined form(s) + formset(s).
And if you look at the internals of admin -- most of the handling for
ModelAdmin is to do exactly this -- to allow for a form + multiple form
sets on a single admin detail page.

 * Getting form pieces out of admin.

This is a bit of a variation of the previous point. In addition to combined
form+formset handling, Django's admin contains a bunch of custom widgets
and fields that aren't easy to use outside of admin. This could/should be
factored out into resources that can be used elsewhere. IMHO. admin should
be a lightly configured version of the tools available to everyone, not
it's own highly specialised set of tools.

On a wider front, the most important part that is missing is a
timeline. We're not just looking for a hit list of stuff for you to look
at; we're also looking to establish that you've got a realistic set of
expectations for what can be achieved in 12 weeks.

So - yes, the deadline is looming, but I still think your project is worth
pursuing. With a little refinement, I definitely think you're in with a
chance of having your project selected.

Yours,
Russ Magee %-)

On Thu, May 2, 2013 at 12:45 AM, Nicolas Bouliane <[email protected]
> wrote:

> Linked here is my proposal for the 2013 Google Summer of Code. As
> suggested by Jacob Kaplan-Moss, I am in the process of reviewing it to
> include timelines and more detailed information about my skillset.
>
> Nonetheless, I would really appreciate to have your feedback regarding the
> propositions contained inside. I count on your experience to confirm that
> my perception of the Forms API is accurate, and my proposal sensible.
>
> The proposal in question:
> https://docs.google.com/document/d/1J3EwocIzf6WHeD80EUfssXpdVFapkrEzdjMq5V4e6Dk/edit?usp=sharing
>
> --
> You received this message because you are subscribed to the Google Groups
> "Django developers" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To post to this group, send email to [email protected].
> Visit this group at http://groups.google.com/group/django-developers?hl=en
> .
> For more options, visit https://groups.google.com/groups/opt_out.
>
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Django developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/django-developers?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to