Demos for the Drupal 8 Zero To Hero course.

Frederic G. MARAND a63108ab9e Step 5: complete the BlogType CRUD. 7 years ago
config cc8f4493fe Step 3: implement skeletons for add/edit/delete forms and provide a schema. 7 years ago
src a63108ab9e Step 5: complete the BlogType CRUD. 7 years ago
README.md a63108ab9e Step 5: complete the BlogType CRUD. 7 years ago
dr8_zth.info.yml ff7a554bfd Step 2: create a config entity class as the bundle class for the content class. 7 years ago
dr8_zth.links.action.yml cc8f4493fe Step 3: implement skeletons for add/edit/delete forms and provide a schema. 7 years ago
dr8_zth.links.menu.yml ff7a554bfd Step 2: create a config entity class as the bundle class for the content class. 7 years ago
dr8_zth.permissions.yml ff7a554bfd Step 2: create a config entity class as the bundle class for the content class. 7 years ago
dr8_zth.routing.yml 7214eb6df9 Step 4: complete implementation of the BlogType collection route 7 years ago

README.md

Demonstrate various Drupal 8 features.

"blog" branch

This contains a solution to the exercise for the entity chapter. The exercise is the following:

  • Create a Blog entity and a BlogType entity as its bundle entity. Blogs are entities created by a User. Various bundles could be a traditional blog, an image gallery and a vlog.
  • Blog items (instances of the Blog entity) should be translatable and revisioned by default.
  • Access control to the Blog entity should be at the entity type level (Blog), not the entity bundle level (BlogType).
  • Both should have a complete CRUD UI: list, display, add/edit, delete
  • Blogs must appear as tabs under the user profile page, with sub-tabs per blog type
  • To better understand what's going on, it is probably better not to use the Drupal console generate commands.

Steps

  1. Create the module and a Blog content entity in it.
  2. Create a BlogType config entity as the bundle entity for Blog, enabling its collection route.
  3. Implement skeletons for add/edit/delete forms and implement a BlogType config entity schema to be able to test config import/export and the delete form
  4. Complete the implementation of the BlogType collection route to show type, name, description, and operations.
  5. Complete the BlogType CRUD by implementing the BlogTypeForm.