Ik ben nu weer wat nieuws aan het proberen in Laravel, flexibele content, het hoeft niet heel erg ingewikkeld te zijn dus maak ik het zelf, zonder gebruik te maken van een library ofzo.
Ik wil een pagina waarop de gebruiker, zelf de indeling van de pagina kan bepalen. Ik wil dus dat die persoon uit 3 bericht types kan kiezen. Bericht, Video of Afbeelding gallerij.
Elk bericht type heeft zijn eigen data velden. Een normaal bericht bijvoorbeeld een titel en beschrijving. Video alleen een video url. Een gallerij, meerdere afbeelding urls, misschien nog met een oneToMany relatie met een afbeeldingen tabel.
Ik wil dus dat alle verschillende velden in de juiste volgorde van wanneer ze zijn opgeslagen getoond worden op de pagina, door iets als dit toe te passen:
@foreach($fields as $field)
@switch($field->type)
@case('video')
<iframe src="{{$field->video_url}}">
@case('post')
<h2>{{$field->title}}</h2>
<p>{{$field->content}}</p>
@case('gallery')
@foreach($field->gallery as $img)
<img src="{{$img->url}}">
@endforeach
@endswitch
@endforeach
Ik denk dat dit wel mogelijk is om 1 algemene berichten model te maken en per bericht type een model, en veel gebruik te maken van OneToMany relaties, maar ik heb nog niet echt een idee, hoe ik het met elkaar zou kunnen combineren in de database structuur.
Heeft iemand enig idee?