我有 2 张桌子:(1)膳食(2)蔬菜。基本上在表单提交中,用户选择 2 个蔬菜添加到新创建的餐点中。
一、服务端模型创建:
public class Meal{
public Meal(
Vegatables = new List<Vegatable>();
}
public int Id {get; set;}
public string Name {get; set;}
public virtual ICollection<Vegatable> Vegatables {get; set;}
}
public class Vegatable{
public Vegatable(
Meals = new List<Meal>();
}
public int Id {get; set;}
public string Name {get; set;}
public virtual ICollection<Meal> Meals {get; set;}
}
二形式:
<div ng-controller="MealCtrl>
<input type="text" ng-model="meal"></select>
<label>Choose Vegatable 1</label>
<div ng-controller="VegatableCtrl>
<select id="vegatable1" ng-model="vegatable" ng-options="vegatable.Name for vegatable in vegatables"></select>
</div>
<label>Choose Vegatable 2</label>
<div ng-controller="VegatableCtrl>
<select id="vegatable2" ng-model="vegatable" ng-options="vegatable.Name for vegatable in vegatables"></select>
</div>
</div>
三、问题:
显然,当我在本地窗口中查看服务器控制器的 POST 方法时,没有为 Meal 类的 vegatable 集合分配任何值。
关于如何在保存到服务器之前将蔬菜添加到 $scope.meal 的任何想法?
最后注:
由于这是一个多对多的关系,所以会有一个连接表。这对 POST 方法有何影响?
已解决 - 像往常一样:求救!!
我看到我做错的一件事是在选择中使用 VegatableCtrl。我现在看到 $scope.Vegatables 的填充实例应该在 MealCtrl 中,并使用 MealCtrl 填充 Vegatables 的选择选项。
谢谢布莱斯!!!