One of my biggest issues with craft so far is having to type out which template file a section is using, I don't understand why we don't have a location to enter all our possible templates, which could then be chosen when creating sections "new pages" etc. Or having craft know which template files exist.
Could this be possible via a plugin, or would the core need to be modified. Having to explain to a client they need to know the name and location of a template file when creating new pages isn't great.
Simple example, say I have news post, and events, and I want an index of both as well as single news post and single events both using different templates. When a client wants to create a new event, they would need to know the name of the template that is used for single events otherwise it would default to index.html if the auto generated entry-template name doesn't exist.
When creating a new entry craft defaults to a news item or I call it a news "post". So to create a new event, I need to create a new section, and then specify the entry-template otherwise it defaults to the name of the section, and if no template exists for that entry template "which ends up being the name of the section" it defaults to the index.html template. Then they still need to assign fields to each section that is created. The assigning fields can be simplified by creating a group say called Single Events, with all the possible fields allowed for that type of section "page" this case being single events...
The only easy solution I can think of is to not use groups at all for fields, and just throw every field into each section, then in the index.html template check for each field and if it exists before displaying it. But what about not wanting to display it or displaying dynamic content based on the entry type news post vs single event vs team members vs resources vs contact forms. A solution to that is creating another field called content type with a drop down for single event, team member, resources, contact form... then in the index.html template check the value of the drop down before determining what is going to be displayed and what isn't.
My whole point is it seems like this could all be simplified by having a drop down to choose a template when creating a section since a section needs to be created so that you can create a new entry that is not a news post, and I also think once you create a new section it should allow you to either start editing that section, or take you to the field selection to add fields to that section, after you save a section it just takes you back to the sections which you then have to click edit entry types to choose which fields are used for that section.
To me it would make more sense to have fields assigned to templates, and sections are just holders for "entries" or what I call pages. Example basic-page.template has a bunch of fields assigned to it. I create a section called about us, and choose basic-page.template after saving the section allow me to start editing the entry for that "section".
Sorry for the wall of text just trying to give some examples and I hope they make sense. Just trying to understand the concept of some of this, I'm getting by but it seems odd not to allow to choose a template that is used unless you are a dev on the project and know exactly the name of the template.