0
我試圖發佈一個包含列表的綁定表單。這是我的斯卡拉模板代碼:Play!2框架 - 無法從表單中檢索列表
<input type="hidden" value="@recipe.name" name="recipes[0].recipe.name">
<input type="hidden" value="@recipe.id" name="recipes[1].recipe.id">
<input type="hidden" value="@recipe.url" name="recipes[2].recipe.url">
<input type="hidden" value="@user" name="user.email">
</fieldset>
<input type="submit" value="submit" class="btn btn-primary">} </td>
列表大小是三,但其他一切都是空的。我可以檢索用戶電子郵件。下面是控制器的相關領域:
MenuPlan menuPlan = boundForm.get();
User user = User.getUser(menuPlan.user.email);
List<Recipe> recipesForm = menuPlan.recipes;
Logger.info("");
Logger.info("Number of recipes in menuPlan.recipes = " + menuPlan.recipes.size());
Logger.info("Name of recipe = " + menuPlan.recipes.get(1).name);
Logger.info("");
for(Recipe recipe : menuPlan.recipes){
Logger.info("");
Logger.info("The recipe id = " + recipe.id);
Logger.info("");
Logger.info("The recipe name = " + recipe.name);
Logger.info("");
Logger.info("The recipe url = " + recipe.url);
Logger.info("");
//Recipe recipeLoop = Recipe.findById(recipe.name);
//menuPlan.recipes.add(recipeLoop);
}
型號:
@ManyToMany
public List<Recipe> recipes;
@OneToOne(mappedBy="menuPlan")
public User user;
和 @Id 衆長ID;
public String url;
@ManyToMany(cascade = CascadeType.ALL, mappedBy = "recipes")
public List<MenuPlan> menuPlans;
public String name;
我已經嘗試切換的mappedBy到多對多的每一面,看它是否是與所有權的事,但是這並沒有幫助。
正如在頂部提到的,任何有關爲什麼元素在看起來它們被拾取時返回null的建議將不勝感激。任何建議,我可以測試也將不勝感激!