gpt4 book ai didi

java - 获取模型中的对象列表并实现到 ng-repeat 中

转载 作者:行者123 更新时间:2023-11-30 03:44:09 24 4
gpt4 key购买 nike

我有一个网络应用程序和两个我想使用的模型。一种模型是Trainees,另一种模型是TraineeStatus。我想在 Trainees 中获取一个数组或 TraineeStatus 列表,然后将其传递给 AngularJS View 并在 select 方法中显示它,最好的方法是什么?

受训者.java

@Entity
public class Trainees {

@Id
@GeneratedValue
private int traineesID;
private int groupsID;
@ManyToOne
private TraineeStatus traineestatus;
private int customersID;
private String name;
private String surname;
private String phoneDetails;
private String email;

public Trainees(){

}

public Trainees(String name, String surname, String phoneDetails, String email, int id, int groupsID, TraineeStatus traineestatus, int customersID) {
super();
this.name = name;
this.surname = surname;
this.email = email;
this.phoneDetails = phoneDetails;
this.groupsID = groupsID;
this.traineestatus = traineestatus;
this.customersID = customersID;
}

//getters and setters

@Override
public boolean equals(Object object) {
if (object instanceof Trainees){
Trainees contact = (Trainees) object;
return contact.traineesID == traineesID;
}

return false;
}

@Override
public int hashCode() {
return traineesID;
}
}

TraineeStatus.java

@Entity
@Table(name="traineeStatus")
public class TraineeStatus {

@Id
@GeneratedValue
private int traineeStatusId;
private String value;

public TraineeStatus(){

}

public TraineeStatus(String value, int id) {
super();
this.value = value;
}

//getters and setters

@Override
public boolean equals(Object object) {
if (object instanceof TraineeStatus){
TraineeStatus value = (TraineeStatus) object;
return value.traineeStatusId == traineeStatusId;
}

return false;
}

@Override
public int hashCode() {
return traineeStatusId;
}
}

我的看法:

 <div class="input-append">
<select
required
ng-model="contact.traineestatus"
name="traineestatus.id"
placeholder="<spring:message code='sample.status'/> ">
<option ng-repeat="trainee in contact.traineestatus" value="{{trainee.id}}">{{trainee.value}}</option>
</select>
</div>
<div class="input-append">
<label>
<span class="alert alert-error"
ng-show="displayValidationError && updateContactForm.traineestatus.id.$error.required">
<spring:message code="required"/>
</span>
</label>
</div>

目前 contact.traineestatus 返回一个具有 id 和值的对象,但我想获取一个数组。

我正在尝试利用该对象,因此我将有一个选择函数,它会在其中显示值并保存 ID 并将其保存在 Trainees 表中。

有没有办法利用这个对象并在我的选择中使用它?谢谢您的问候!

最佳答案

这有点难以解释,所以我会尽量保持简单。

首先,您需要记住 TraineeStatus 列表不会在具有联系人/学员列表的同一请求中检索,您将需要一个单独的 HTTP 请求来获取该列表。

与使用 ContactRepository 获取所有 Trainees 记录的方式相同,您将需要 TraineeStatusRepository 来获取所有 TraineeStatus 记录。然后,在您的一项服务上,您需要一种方法来获取 TraineeStatus 列表,如下所示:

private List<TraineeStatus> findAllTraineeStatus() {
return traineeStatusRepository.findAll();
}

之后,您需要定义一个 HTTP API 来访问该列表(即 GET http://example.com/traineeStatus )。这个想法可能与您必须检索 ContactList 相同。

然后,在您的 AngularJS 应用程序上,您需要使用一个函数来加载 TraineeStatus 列表。例如:

$scope.getTraineeStatus = function () {
// assuming the HTTP API is: GET http://example.com/traineeStatus
$http.get('http://example.com/traineeStatus', config)
.success(function (data) {
$scope.traineeStatus = data;
})
.error(function (err) {
// handle error
});
}

然后循环遍历 ng-repeat 上的 $scope.traineeStatus 属性:

<select
required
ng-model="contact.traineestatus"
name="traineestatus.id"
placeholder="<spring:message code='sample.status'/> ">
<option ng-repeat="status in traineeStatus" value="{{status.id}}">{{status.value}}</option>
</select>

关于java - 获取模型中的对象列表并实现到 ng-repeat 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26157741/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com