CAKEPHP:过滤器的问题
我正在尝试对员工应用筛选器,以便仅在时间表表上显示他们。如果需要其他代码来帮助您帮助我,我将开始发布它。代码是filter.ctp 问题:CAKEPHP:过滤器的问题,cakephp,filter,Cakephp,Filter,我正在尝试对员工应用筛选器,以便仅在时间表表上显示他们。如果需要其他代码来帮助您帮助我,我将开始发布它。代码是filter.ctp 问题: IDnameHoursEmployeesEdit 您可能需要使用$this->set('timesheets',$timesheets')在控制器上设置变量$timesheets我把控制器放在那里,您能指出我把它放在哪里吗;我想我已经有了。哦,我明白了。。。php变量区分大小写。。。您正在设置时间表并尝试使用时间表,以便它们都应大写或小写?这(技术上)无
IDnameHoursEmployeesEdit
您可能需要使用$this->set('timesheets',$timesheets')在控制器上设置变量$timesheets
我把控制器放在那里,您能指出我把它放在哪里吗;我想我已经有了。哦,我明白了。。。php变量区分大小写。。。您正在设置时间表并尝试使用时间表,以便它们都应大写或小写?这(技术上)无关紧要,但需要在控制器和视图上完全相同。在本例中,一个以大写字母开头,另一个以小写字母开头。根据PHP编码标准,我认为它应该都是小写的
<table>
<tr>
<th>ID</th><th>name</th><th>Hours</th><th>Employees</th><th>Edit</th>
</tr>
<? foreach($timesheets as $row): ?>
<tr><td>
<?=$row['Timesheet']['id']?>
</td><td>
<?=$row['Timesheet']['hours']?>
</td><td>
<a href="../../employees/view/<?=$row['employee']['name']?>"><?=$row['employee']['name']?></a>
</td><td>
<a href="edit/<?=$row['Timesheet']['id']?>">Edit</a>
</td></tr>
<? endforeach; ?>
</table>
<?
class TimesheetsController extends AppController {
var $name = 'Timesheets';
var $scaffold;
var $helpers = array('Number');
function add() {
//check if user loaded form for first time or had already loaded & is now posting
if ($this->request->is('post')) {
//save the data to the db
if ($this->Timesheet->save($this->request->data)) {
//Build message & add to session
$this->Session->setFlash('Timesheet has been saved');
//take user back to the index page
$this->redirect(array('action'=>'index'));
}
//else save did not work
else {
$this->Session->setFlash('Unable to add Timesheet');
}
}
//populate the Employee list
$this->loadModel('Employee');
$this->set('Employees',$this->Employee->find('list',array('order'=> array('Employee.name'))));
$this->set(compact('Employees'));
//populate the Employee list
$this->loadModel('Client');
$this->set('Clients',$this->Client->find('list',array('order'=> array('Client.name'))));
$this->set(compact('Clients'));
}
//create function to filter Timesheet list by selected Employee
function filter($Employee_id) {
$this->set('Timesheets',$this->Timesheet->findAllByEmployeeId($Employee_id));
}
//create function to filter Timesheet list by selected Employee
function filter2($Client_id) {
$this->set('Timesheets',$this->Timesheet->findAllByClientId($Client_id));
}
}
?>