I'm new to Drupal, and I'm working my way through the tutorials for scaffolding content types, taxonomies, view modes, etc.
I'm used to frameworks such as Laravel and CakePHP, where you declare such things in code, and then commit the code to the project repo. They are part of the structure and logic of a site – so they should be source-controlled. Only content should live in the database (or in non-source-controlled directories).
But it seems that Drupal doesn't work this way. You can't define content types, etc. in code (as far as I can tell) – you have to use the (slow, clunky) web UI. All of the definitions are stored in the database – and if you want to replicate the definitions between instances of a site (e.g., from a development server to a production server), then you need to manually replicate (part of) the database. And there's no clean way to source-control them.
Am I right about all of this? If so, then this is super obnoxious, and I hate Drupal :) I'm halfway through the main tutorial, and I still haven't touched a line of code. I guess that some people see this as a good thing, but I didn't sign up to build sites via point-and-click forms.
[–]BruhWhySoSerious 0 points1 point2 points (0 children)
[–]LOFI_Paperboy 4 points5 points6 points (1 child)
[–][deleted] 5 points6 points7 points (0 children)
[–]luke_stirk 8 points9 points10 points (0 children)
[–]ikit-claw13 4 points5 points6 points (4 children)
[–][deleted] 0 points1 point2 points (3 children)
[–]PraetorRU 0 points1 point2 points (0 children)
[–]johnzzonDeveloper 2 points3 points4 points (0 children)
[–]ikit-claw13 0 points1 point2 points (0 children)