我在Hibernate中的旅行者和旅行之间存在这种关系:
如果我想为旅行者1 创建一个新旅行,我访问路线 / frontend /#/ trip-creation / 1 ,这里我有一个表格:
[模板摘录]
<form novalidate="novalidate" class="form-horizontal">
<md-content class="md-padding">
<div layout layout-sm="column">
<md-input-container flex>
<label>Vorname</label>
<input ng-model="traveler.firstName" disabled>
</md-input-container>
<md-input-container flex>
<label>Nachname</label>
<input ng-model="traveler.lastName" disabled>
</md-input-container>
</div>
<div layout layout-sm="column">
<md-input-container flex>
<label>Wert</label>
<input required type="number" step="any" name="rate" ng-model="trip.rate" min="0" max="9999999">
</md-input-container>
<md-input-container flex>
<md-select ng-model="trip.currency" placeholder="€">
<md-option ng-value="currency" ng-repeat="currency in getCurrencies()">{{currency}}</md-option>
</md-select>
</md-input-container>
</div>
<div layout layout-sm="column">
<md-input-container flex>
<label>Beschreibung</label>
<textarea ng-model="trip.description" columns="1" md-maxlength="150"></textarea>
</md-input-container>
</div>
...
访问$routeParams.id
我可以获取旅行者1 的详细信息,例如 firstName(= Marcel), lastName 以及 traveler_id
$scope.traveler = TravelerFactory.show({id: $routeParams.id});
这是 Traveler 对象的示例。它包含到目前为止所有旅行者 旅行者:
[{"traveler_id":1,"company_id":0,"account":false,"firstName":"Marcel","middleName":null,"lastName":"Schmitt","gender":null,"trips":[],"email":null}]
我的问题:
如何将旅行者1 与新创建的旅行
联系起来[{&#34; trip_id&#34;:2,的&#34;旅行者&#34;:空下,&#34;货币&#34;:空,&#34;速率& #34;:100,&#34;描述&#34;:&#34; Flug&#34;&#34; dateCreated会&#34;:空}]
这是映射现实的正确方法吗?
谢谢!
其他信息//后端:Java,Hibernate 4.11,SpringMVC //前端:AngularJS 1.4.3
答案 0 :(得分:0)
考虑一下您的REST服务。
旅行者信息URL(旅行者对象):
/traveler/:id -> #/traveler/1
新旅行(旅行者对象):
/traveler/:id/create -> #/traveler/1/create
现有旅行网址(旅行对象):
/traveler/:id/travel/:travel_id -> #/traveler/1/travel/123
编辑现有旅行网址(旅行对象):
/traveler/:id/travel/:travel_id/edit -> #/traveler/1/travel/123/edit
因此,在您添加新旅行后,使用新的旅行ID成功回电(例如:travel_id = 456),然后重定向到#/ traveler / 1 / travel / 456
我相信你可以改进它,只是例子