簡體   English   中英

Play Framework 1.2.7將表單值傳遞給控制器

[英]Play Framework 1.2.7 pass form values to controller

所以我試圖將表單中的值傳遞給控制器​​。 然后控制器使用這些值來創建“課程”。 我似乎無法傳遞數據,但正在創建課程。 這是我的看法

#{form @Courses.save()}
<div>
   Course Name: <input type="text" name="courseName"  />
</div>
<div>
  Course Code: <input type="text" name="courseCode"  /> 
</div>
<div>
  Course Description: <input type="text" name="courseDescription"  /> 
</div>
<div>
  Course Credit: <input type="text" name="courseCredit"  /> 
</div>
<div>
  Course Total Capacity: <input type="text" name="courseTotalCapacity"  /> 
</div>
<div>
  Course Is Active?: <input type="text" name="courseIsActive"  /> 
</div>
<div>
  Course Department: <input type="text" name="department"  /> 
</div>
<div>
   <input type="submit" value="Create Course" /> 
</div>
#{/form}

這是我的控制器方法

public static void save(String course_name, String course_code, String course_description,     String credit, String capacity, String isActive){
    Course course = new Course(course_name, course_code, course_description, credit, capacity, isActive).save();
    course.save();
    renderJSON(course);
}

HTML中的輸入名稱與actions方法的參數不匹配(而不是course_name您需要編寫courseName等,就像在HTML中一樣)。

public static void save(String courseName, String courseCode, String courseDescription,     String courseCredit, String courseTotalCapacity, String courseIsActive){
    Course course = new Course(courseName, courseCode, courseDescription, courseCredit, courseTotalCapacity, courseIsActive).save();
    course.save();
    renderJSON(course);
}

在您的視圖中,您可以將您的數據名稱替換為course.Name,course.Code,...

#{form @Courses.save()}
    <input type="text" name="course.name"  />
    <input type="text" name="course.code"  />
    <input type="text" name="course.description"  />
    ...
#{/}

在你的控制器中,你可以這樣寫:

public static void save(Course course){
    course.save();
    renderJSON(course);
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM