Hi Idan et al. --

Thanks for putting this all together!

In general, I like this a lot, and I'm always going to defer to the
eyes of someone like Idan who spends more time wrangling templates
than I do. So I like the general gist, and I most don't mind the {%
formconfig %} business.

However, I do have a few concerns:

1. Performance: it looks, to me, like rending a basic form is going to
cause dozens of template includes and dozens of sub-renders (the form
loads a form template which loads row templates which load widget
templates). That's dozens of disk hits, and a lot of overhead for form
rendering. I worry about this overhead a lot. Django's performance has
slipped lately, and I'm really afraid this'll make things a lot worse.

So I'm going to need to see some benchmarks -- particularly in how a
simple {% form myform %} compares to {{ form.as_* }}.

The wrong performance benchmarks could result in a veto from me; this
is important.

2. Verbosity: There's a lot of tags (well, 4, but that's a lot to me)
wall-of-code stuff like
https://github.com/idangazit/formrendering/blob/master/djangocon_sketch.html#L62-83
doesn't particularly give me the warm fuzzies. I think  part of the
problem is that all the tags are `form*` which makes for a bit of
"bork bork bork" there.

I think it might be possible to simplify things somewhat here, so
here's my rough thoughts:

* Keep {% form %} -- it's obvious.
* Rename {% formfield %} to {% field %} -- it won't conflict, and it's
(fairly) obvious we're talking about a *form* field since we'll
usually be saying {% field myform.whatever %}.
* Drop {% formrow %} entirely. Instead, have {% field %} generate the
whole thing you're calling a "row".
* Add {% widget %} which rendered just the field (i.e. what {%
formfield %} does now).
* Keep {% formconfig %}.

This is verging dangerously close to bikeshedding, so the syntax
either way won't change my vote much.

Thanks!

Jacob

-- 
You received this message because you are subscribed to the Google Groups 
"Django developers" group.
To post to this group, send email to django-developers@googlegroups.com.
To unsubscribe from this group, send email to 
django-developers+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/django-developers?hl=en.

Reply via email to