Improvements to scaffold generated html

Hi,
I've added the following patch:
http://dev.rubyonrails.org/attachment/ticket/8514/use_content_tag_helper_in_scaffold.diff

It cleans up the html generated by the scaffold generator. It doesn't
change anything major about the structure of the generated code, just
mainly ads id's and classes to the tr's using content_tag_for and
humanizes some labels that weren't there before.

I would like to further add a patch after consulting with you guys
first about further possibly controversial changes I'd like to add to
it.

Firstly I would like to remove the following fields from the generated
new and edit forms:

* created_at, updated_at
* any foreign key field following standard ar foreign id naming

My main reason for this is during rails conf I discovered that more
and more people are using the scaffold resource for creating code.
Almost everyone I talked to had these (well at least the date fields)
as pet pieves.

My suggestion on how to do this is to add a method editable? to the
GeneratedAttribute class. This could then be simply tested in the
generators erb files.

Regards
Pelle

The scaffold UI is great for learning how the routes work, and so on.
But I don't think anyone should be encouraged to take the scaffolding
views and morph them into production-quality views. I always end up
deleting most of the generated code because my projects always need
something different.

Just my two cents.

Jeff
softiesonrails.com

Pelle’s idea was to make generated code suck less so you have to delete less. Nice thought, but it was rejected.

Hi Pelle,

Hi,
I've added the following patch:
http://dev.rubyonrails.org/attachment/ticket/8514/
use_content_tag_helper_in_scaffold.diff

It cleans up the html generated by the scaffold generator.

I think this is a great idea. Alas, if I understand correctly, it
isn't being accepted by core. :frowning: Is that true?

If so, I'd love to see this made into a plug-in, so we could work on
it further, and at least make it available to people who want it.
Have you considered that?

-enp

It seems like this would be a great compromise; it's relatively easy
to create a generator within a plugin. I imagine that many people
would find scaffolding that highlights some best practices a useful
educational tool.

Exactly!
+1 for plugin with awesome scaffolding code.

Rails professionals will always write their own code, naturally. But let us not forget how most of us learned ERB and form helpers through scaffolding code. Controller scaffold code is really useful to learn REST and respond_to, also.

I have thought about releasing it as a plugin, even though I'm
thinking that Hampton Caitlin's make_resourceful might be the better
option:

http://hamptoncatlin.com/2007/make_resourceful-0-1-0-release

One thing about the edge scaffold (or the previous resource_scaffold)
is that many rails professionals use it now, just to create the basic
outline of a controller, model etc. Which we probably never would have
with the old scaffold generator.

I agree that if the main purpose from the core team with scaffold
still is educational, then it should remain simple. However I still
think that the code could be improved somewhat in the existing
version.

Pelle

+1.

I never used scaffolds in the pre-1.2.3 days. But now, especially for little internal utilities, they’re quite useful.

And to expand upon Pelle’s point, yes, simple is good… But simple does not have to mean wrong. Theres no reason that things like label tags should not be included… -especially- if its for educational purposes.

Tyler

+1 I had made a patch for this a while back.
I also think that the forms should be in a partial - especially now
that simply_helpful is rolled in.