我得到了这个代码,我可以为每个学生存储我的所有结果(现在,迟到,缺席,其他)。
这是我的观点
<div align="center"><b>List of Students Enrolled</b></div>
<table class="table table-striped table-bordered">
<thead>
<tr>
<th>Student ID</th>
<th>Student Name</th>
<th>Present</th>
<th>Late</th>
<th>Absent</th>
<th>Others</th>
<th>Comments</th>
</tr>
</thead>
<tbody>
@foreach ($users as $users)
<tr>
<td>{{ $users->student_id }} </td>
<td>{{ $users->student_firstname }} {{ $users->student_lastname }}</td>
<td>{{ Form::radio('student['.$users->student_id.'][status]', 'present' , true) }}</td>
<td>{{ Form::radio('student['.$users->student_id.'][status]', 'late' ) }}</td>
<td>{{ Form::radio('student['.$users->student_id.'][status]', 'absent') }}</td>
<td>{{ Form::radio('student['.$users->student_id.'][status]', 'others') }}</td>
<td>{{ Form::text('student['.$users->student_id.'][comment]') }}</td>
@endforeach
</tr>
{{ HTML::script('js/bootstrap.js'); }}
</tbody>
</table>
这是我保存的控制器
foreach(Subject1::where('section_name', 'like', Input::get('section_name'))->where('code','like',Input::get('subject_code'))->get() as $student){
foreach (Input::get('student') as $studentId ) {
$attendance = new Attendances();
$attendance->status = $studentId['status'];
$attendance->comment = $studentId['comment'];
$attendance->student_id = $student->student_id;
$attendance->student_firstname = $student->student_firstname;
$attendance->student_lastname = $student->student_lastname;
$attendance->teacher_id = Auth::user()->id;
$attendance->teacher_firstname = Auth::user()->firstname;
$attendance->teacher_lastname = Auth::user()->lastname;
$attendance->section_id = $student->section_id;
$attendance->section_name = Input::get('section_name');
$attendance->subject_id = $student->id;
$attendance->subject_code = $student->code;
$attendance->subject_name = $student->name;
$attendance->date_recorded = Input::get('date');
$attendance->save();
}
}
然而,当我在我的数据库中看到该表时,它显示了两个记录,其中 student1在当天本身以及学生2中存在和缺席(假设我在student1上输入并且在student2上缺席
请帮助:(
答案 0 :(得分:0)
您似乎从输入中循环了几个学生,但也从循环外部合并了另一个学生模型。这可能是你的问题所在。
除此之外,您应该只将学生ID存储在考勤表上,而不是将所有学生数据存储在姓/名之外。考虑一下,如果有人改名,事情会变得多么糟糕。