Разместите и получите отображение в контроллере - PullRequest
0 голосов
/ 19 декабря 2018

Трудно объяснить мою проблему на английском, потому что я не являюсь носителем языка.Но я надеюсь, вы меня поймете.Я новичок весной.У меня есть два класса POJO для ПК и PcCharacteristics.И у меня соответственно есть контроллеры.Когда я нажимаю на ссылку «характеристики» в моем настольном ПК, я, безусловно, обращаюсь к charactTable.В моем PcCharController это отображение направления похоже на @GetMapping("pc/{id}/characts").Что я должен написать в «return» в моем методе saveCharact в PcCharController, чтобы перенаправить меня в мой CharactTable, который отображает характеристики по идентификатору компьютера?Вот мой контроллер и saveChar в нижней части.И у меня та же проблема с методом deleteChar.

@Controller
public class PcCharsController {

final private PcRepository pcRepository;
final private PcCharactRepository pcCharactRepository;

public PcCharsController(PcRepository pcRepository, PcCharactRepository pcCharactRepository) {
    this.pcRepository = pcRepository;
    this.pcCharactRepository = pcCharactRepository;
}

@GetMapping("pc/{id}/characts")
public String pcCharList(@PathVariable Long id, Model model) throws Exception{

    Pc pc = pcRepository.findById(id).orElseThrow(() -> new Exception("PostId " + id + " not found"));
    List<PcCharacts> pcChars = pc.getCharacts();
    model.addAttribute("model", pc.getModel());
    model.addAttribute("pcChars", pcChars);
    return "charList";
}

@PostMapping("pc/{id}/characts")
public String addChar(@RequestParam Long id,
                      @RequestParam String name,
                      @RequestParam String value,
                      Model model) throws Exception {
    Pc pc = pcRepository.findById(id).orElseThrow(() -> new Exception("PostId " + id + " not found"));
    PcCharacts pcCharacts = new PcCharacts(name, value, pc);
    pcCharactRepository.save(pcCharacts);
    List<PcCharacts> pcChars = pc.getCharacts();
    model.addAttribute("pcChars", pcChars);
    return "redirect:";
}

@GetMapping("/charact/{pcChars}")
public String editCharact(@PathVariable PcCharacts pcChars, Model model){
    model.addAttribute("pcChars", pcChars);
    return "editPcChar";
}

//HERE IS A PROBLEM
@PostMapping("pc/characts/save") //OR HERE
public String charSave(@RequestParam String name,
                       @RequestParam String value,
                       @RequestParam("id") PcCharacts pcChars){
    pcChars.setName(name);
    pcChars.setValue(value);
    pcCharactRepository.save(pcChars);
    return "redirect:/pc/{id}/characts"; //HERE
}

@GetMapping("/charact/delete/{id}")
public String deletePc(@PathVariable("id") PcCharacts pcChars){
    pcCharactRepository.delete(pcChars);
    return "redirect:/pc/{id}/";
}

}

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...