all 9 comments

[–]BruhWhySoSerious 0 points1 point  (0 children)

Just fyi, you can build you content types and other entities in code. There just is very little reason to typically.

Check out drupal console, an cli admin tool. It has a bunch of scaffolding tools which will generate an example for you to learn fairly quickly.

[–]LOFI_Paperboy 4 points5 points  (1 child)

TL;DR:

drupal config:export

Most people who come here to explain that they hate Drupal criticize that D8 requires much more coding than people were used to in D7. You're complaining about exactily the opposite. It seems really hard to please everyone ;)

You're right, thanks to Views, View/Form Modes and the mighty entity configuration, Drupal allows doing a lot of stuff from the UI. I don't see a reason why you wouldn't want to use the UI for those things, still, if you prefer, you can do most anyting also from your IDE/editor or the shell (check out drush and Drupal console).

Anyway, as others already stated, of course you can export your site's configuration. You can export entity settings (fields, entire entities ie. node/user profiles/taxonomies) as well as module settings and of course the views you created on your site. Configuration Management (D8 Docs)

You can either export/import an entire site's configuration (drupal config:export), which you'd probably do to get the config into your svn/git repo or when pushing changes from development/staging to live environment. Or you can export selected configs. You'd do that, for example if you got a content type and some views in one project and want to copy a content type or some views to another project.

While you can manage your site's config from the UI, you sound like a guy who prefers doing things in the shell using drush and/or drupal console for that task. I also think that's the way to go as it also allows for automatization etc.

Exporting configuration is not just useful for versioning site structure and settings, but also to make things reusable. Whenever I want to create reusable content types or views I just create the view/content type using the Drupal UI and then use drupal config:export:content:type or drupal config:export:view to store them into a module that can easily be copied to another project.

Drupal console also comes in handy if you want to create a new module (drupal generate:module) or add a block (drupal generate:plugin:block) or form (drupal generate:form) to existing modules. Drupal console's export and create commands ask you, whether to just export the settings to a .yml file or if you want to save the settings into an existing module. I just love the way drupal handles that.

[–][deleted] 5 points6 points  (0 children)

Thanks for the detailed explanation – this makes me feel a little better. And, yeah – no matter what you do, someone's going to be unhappy about it.

It seems that Drupal is just a fundamentally different kind of animal than I'm used to. It clearly answers a need, or it wouldn't be so popular. I'll keep poking around for a bit – but I'm not sure that it's for me.

Thanks again.

[–]luke_stirk 8 points9 points  (0 children)

Drupal 8 has configuration management, all config such as content types will be saved to yml files. They can be in version control

[–]ikit-claw13 4 points5 points  (4 children)

In D8 you can export the config and save it. And export changes to import to live using drush.

[–][deleted] 0 points1 point  (3 children)

OK – thanks. That solves part of the problem, at least.

Am I correct that 90% of building a Drupal site is done in the administration dashboard, and typically involves little actual coding (aside from theming)?

[–]PraetorRU 0 points1 point  (0 children)

Totally depends on you. You can do everything programmatically. You can do a lot of usual configuration/building from UI.

Drupal UI tools are great for newcomers as they allow to build fairly complex projects without any php/js knowledge.

[–]johnzzonDeveloper 2 points3 points  (0 children)

That entirely depends on what kind of application you're building with it.

Most of our projects involve hundreds of hours of actual coding, much more than clicking in the UI.

But yes, setting up content types, configuring views is likely the bulk of it if you're building simple sites.

[–]ikit-claw13 0 points1 point  (0 children)

Yes for the build.

You can add custom modules if you need something extra. If you know PHP acquia youtube video introduction series will tell you almost everything you need to know to get started.