angular - 更新模型包含 @DBRef [Spring-boot Angular]
问题描述
在 Spring Boot 项目中,我正在使用 Spring Data MongoDB,并且我有包含 @DBRef 的 classA 我不知道如何在前端更新它我尝试更新它所有其他变量都更新除了 classB whrreas 用于后端它的工作. 现在我希望有人让我知道如何更新 Adresse。
public class User
{
@Id
private String id;
private String email
@DBRef
private Adresse adresse;
用户控制器
@PatchMapping("/update/{id}")
public ResponseEntity<?> update(@Valid @RequestBody Utilisateur user, @PathVariable("id") String id){
Optional<Utilisateur> userData = utilisateurRepository.findById(id);
Utilisateur userToEdit = userData.get();
if(user.getAdresse()!=null){
Adresse addr = new Adresse(user.getAdresse().getAdresse(), user.getAdresse().getVille(), user.getAdresse().getCode_postal()
, user.getAdresse().getRegion(), user.getAdresse().getPays());
this.adresseRepository.save(addr);
userToEdit.setAdresse(addr);
用户服务
updateProfile(userData: any, id: string ): Observable<any> {
return this.http.patch( API_URL + 'update/' + id, userData, httpOptions);
}
组件.ts
form: any = {};
id: string;
errorMessage = '';
currentUser: any;
constructor(private userservice: UserService, private route: ActivatedRoute, private router: Router, private token: TokenStorageService) { }
ngOnInit() {
this.currentUser = this.token.getUser();
}
onSubmit() {
this.userservice.updateProfile(this.form, this.currentUser.id).subscribe(
data => {
console.log(data);
},
err => {
this.errorMessage = err.error.message;
}
);
}
组件.html
<div class="form-group">
<label>Address</label>
<input type="text" class="form-control" placeholder=""
name="adresse"
[(ngModel)]="form.adresse.adresse"
required
#adresse="ngModel">
</div> <!-- form-group end.// -->
<div class="form-group col-md-6">
<label>City</label>
<input type="text" class="form-control"
name="ville"
[(ngModel)]="form.adresse.ville"
required
#ville="ngModel">
</div> <!-- form-group end.// -->
解决方案
形式:UserInfo = {地址{}};
推荐阅读
- php - 如何在 PHP 上将文件从一个目录移动到同一服务器上的另一个目录
- javascript - Laravel Stripe 和 Cashier 没有这种支付方式
- c++ - Threadpool 使用 C 代码,但无法在 C++ 项目中构建
- javascript - Webpack 调试工具
- flutter - 为什么我的扩展容器没有占据我设备的剩余高度?
- mongodb - 将聚合管道与更新运算符相结合
- javascript - 为什么 mapStateToDispatch 没有发送正确的值
- laravel - Laravel 向推送者广播消息
- javascript - 在数据表中启用编辑/删除
- r - 使用函数用 sd 估算异常值