CakePHP öğrenme yaşıyorum ve ben sadece bir kitap basit bir Yapılacaklar listesi uygulaması yapıyordu. App temelde bir giriş alanından bir görev alır, sonra tıklayın 'Görev Ekle' ve görev veritabanına ilave edilmelidir ve daha sonra kullanıcı Görevler onlar sadece eklenen dahil tüm görevleri görülebilir sayfayı görüntüle yönlendirildi . Eklenti görev görünümüne (add.ctp) bir "Görev Ekle" düğmesi vardır. Düğme tarayıcıda gösterir, ancak tıklandığında hiçbir şey yok, hatta hiçbir şey ile bağlantılı görünmüyor? İşte benim kod:
//Model: task.php
<?php
class Task extends AppModel
{
var $name = 'Task';
}
?>
//Controller: tasks_controller.php
<?php
class TasksController extends AppController
{
var $name = 'Tasks';
var $helpers = array('Html', 'Form');
function index()
{
$this->set('tasks', $this->Task->find('all'));
}
function add()
{
if (!empty($this->data)) {
$this->Task->create();
if ($this->Task->save($this->data)) {
$this->Session->setFlash('The Task has been saved');
$this->redirect(array('action'=>'index'), null, true);
} else {
$this->Session->setFlash('Task not saved. Try again.');
}
}
}
}
?>
//View: views/tasks/index.ctp
<h2>Tasks</h2>
<?php if(empty($tasks)): ?>
<p>There are no tasks in this list</p>
<?php else: ?>
<table>
<tr>
<th>Title</th>
<th>Status</th>
<th>Created</th>
<th>Modified</th>
<th>Actions</th>
<tr>
<?php foreach($task as $task): ?>
<tr>
<td>
<?php echo $task['Task']['title'] ?>
</td>
<td>
<?php
if($task['Task']['done']) echo "Done";
else echo "Pending"
?>
</td>
<td>
<?php echo $task['Task']['created'] ?>
</td>
<td>
<?php echo $task['Task']['modified'] ?>
</td>
<td>
</td>
</tr>
<?php endforeach; ?>
</table>
<?php endif; ?>
//View: views/tasks/add.ctp
<?php $form->create('Task'); ?>
<fieldset>
<legend>Add New Task</legend>
<?php
echo $form->input('title');
echo $form->input('done');
?>
</fieldset>
<?php echo $form->end('Add Task'); ?>
//My Database setup
CREATE TABLE `tasks` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`title` varchar(255) NOT NULL,
`done` tinyint(1) DEFAULT NULL,
`created` datetime DEFAULT NULL,
`modified` datetime DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
Yeterince Umut şu açık. Bu çok basit bir uygulama, bu yüzden düzeltme kolaydır eminim. Eklenti görev görünümüne (add.ctp) bir "Görev Ekle" düğmesi vardır. Düğme tarayıcıda gösterir, ancak tıklandığında hiçbir şey yok, hatta hiçbir şey ile bağlantılı görünmüyor?
Teşekkür peşin, ben herhangi bir yardım için teşekkür ederiz.