Server-Side Rendering - II
Let's continue the server-side rendering by adding and editing a team.
We'll cover the following...
Create team
If we test the code now, the browser should look like this when adding a team:
Edit team
The code will also work for editing a team since it only needs the server-side Thymeleaf rendering we’ve already implemented:
However, as we can’t yet add players through the UI, we need to generate them when seeding the database.
Press + to interact
Streams.forEachPair(generatedUsers.stream().limit(TEAM_NAMES.length),Arrays.stream(TEAM_NAMES),(user, teamName) -> {Set<TeamPlayerParameters> players = Set.of(new TeamPlayerParameters(randomUser(generatedUsers),PlayerPosition.SMALL_FORWARD),new TeamPlayerParameters(randomUser(generatedUsers),PlayerPosition.SHOOTING_GUARD),new TeamPlayerParameters(randomUser(generatedUsers),PlayerPosition.CENTER));CreateTeamParameters teamParameters = new CreateTeamParameters(teamName,user.getId(),players);teamService.createTeam(teamParameters);});
On line 8, we add a random user as a SMALL_FORWARD
to the team.
To make this code work, we need to update TeamService
and TeamServiceImpl
...