Created
March 6, 2013 17:12
-
-
Save tonysm/5101036 to your computer and use it in GitHub Desktop.
blog tutorial
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<h1>Add Post</h1> | |
<?php | |
echo $this->Form->create('Post'); | |
echo $this->Form->input('title'); | |
echo $this->Form->input('body', array('rows' => '3')); | |
echo $this->Form->end('Save Post'); | |
?> |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<h1>Edit Post</h1> | |
<?php | |
echo $this->Form->create('Post'); | |
echo $this->Form->input('title'); | |
echo $this->Form->input('body', array('rows' => '3')); | |
echo $this->Form->input('id', array('type' => 'hidden')); | |
echo $this->Form->end('Save Post'); | |
?> |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<h1>Blog posts</h1> | |
<?php echo $this->Html->link( | |
'Add Post', | |
array('controller' => 'posts', 'action' => 'add') | |
); ?> | |
<table> | |
<tr> | |
<th>Id</th> | |
<th>Title</th> | |
<th>Actions</th> | |
<th>Created</th> | |
</tr> | |
<!-- Here's where we loop through our $posts array, printing out post info --> | |
<?php foreach ($posts as $post): ?> | |
<tr> | |
<td><?php echo $post['Post']['id']; ?></td> | |
<td> | |
<?php echo $this->Html->link($post['Post']['title'], array('action' => 'view', $post['Post']['id'])); ?> | |
</td> | |
<td> | |
<?php echo $this->Form->postLink( | |
'Delete', | |
array('action' => 'delete', $post['Post']['id']), | |
array('confirm' => 'Are you sure?')); | |
?> | |
<?php echo $this->Html->link('Edit', array('action' => 'edit', $post['Post']['id'])); ?> | |
</td> | |
<td> | |
<?php echo $post['Post']['created']; ?> | |
</td> | |
</tr> | |
<?php endforeach; ?> | |
</table> |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
/** | |
* | |
*/ | |
class Post extends AppModel | |
{ | |
public $validate = array( | |
'title' => array( | |
'rule' => 'notEmpty' | |
), | |
'body' => array( | |
'rule' => 'notEmpty' | |
) | |
); | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
/** | |
* | |
*/ | |
class PostsController extends AppController | |
{ | |
public $helpers = array('Html', 'Form'); | |
public function index() | |
{ | |
$this->set('posts', $this->Post->find('all')); | |
} | |
public function view($id = null) { | |
if (!$id) { | |
throw new NotFoundException(__('Invalid post')); | |
} | |
$post = $this->Post->findById($id); | |
if (!$post) { | |
throw new NotFoundException(__('Invalid post')); | |
} | |
$this->set('post', $post); | |
} | |
public function add() { | |
if ($this->request->is('post')) { | |
$this->Post->create(); | |
if ($this->Post->save($this->request->data)) { | |
$this->Session->setFlash('Your post has been saved.'); | |
$this->redirect(array('action' => 'index')); | |
} else { | |
$this->Session->setFlash('Unable to add your post.'); | |
} | |
} | |
} | |
public function edit($id = null) { | |
if (!$id) { | |
throw new NotFoundException(__('Invalid post')); | |
} | |
$post = $this->Post->findById($id); | |
if (!$post) { | |
throw new NotFoundException(__('Invalid post')); | |
} | |
if ($this->request->is('post') || $this->request->is('put')) { | |
$this->Post->id = $id; | |
if ($this->Post->save($this->request->data)) { | |
$this->Session->setFlash('Your post has been updated.'); | |
$this->redirect(array('action' => 'index')); | |
} else { | |
$this->Session->setFlash('Unable to update your post.'); | |
} | |
} | |
if (!$this->request->data) { | |
$this->request->data = $post; | |
} | |
} | |
public function delete($id) { | |
if ($this->request->is('get')) { | |
throw new MethodNotAllowedException(); | |
} | |
if ($this->Post->delete($id)) { | |
$this->Session->setFlash('The post with id: ' . $id . ' has been deleted.'); | |
$this->redirect(array('action' => 'index')); | |
} | |
} | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<h1><?php echo h($post['Post']['title']); ?></h1> | |
<p><small>Created: <?php echo $post['Post']['created']; ?></small></p> | |
<p><?php echo h($post['Post']['body']); ?></p> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment