working through cake blog tutorial

cat-town
Dan Buch 14 years ago
parent d65971eb9c
commit d5889c0cb8

@ -26,8 +26,11 @@
* its action called 'display', and we pass a param to select the view file
* to use (in this case, /app/views/pages/home.ctp)...
*/
Router::connect('/', array('controller' => 'pages', 'action' => 'display', 'home'));
// Router::connect('/', array('controller' => 'pages', 'action' => 'display', 'home'));
Router::connect('/', array('controller' => 'posts', 'action' => 'index'));
/**
* ...and connect the rest of 'Pages' controller's urls.
*/
Router::connect('/pages/*', array('controller' => 'pages', 'action' => 'display'));
Router::connect('/pages/*', array('controller' => 'pages', 'action' => 'display'));
?>

@ -0,0 +1,47 @@
<?php
class PostsController extends AppController {
public $helpers = array("Html", "Form");
public $name = "Posts";
function index() {
$this->set("posts", $this->Post->find("all"));
}
function view($id = null) {
$this->Post->id = $id;
$this->set("post", $this->Post->read());
}
function add() {
if (!empty($this->data)) {
if ($this->Post->save($this->data)) {
$this->Session->setFlash("Your post has been saved.");
$this->redirect(array("action" => "index"));
}
}
}
function delete($id) {
if ($this->Post->delete($id)) {
$this->Session->setFlash("The post with id: " . $id . " has been deleted");
$this->redirect(array("action" => "index"));
}
}
function edit($id = null) {
$this->Post->id = $id;
if (empty($this->data)) {
$this->data = $this->Post->read();
} else {
if ($this->Post->save($this->data)) {
$this->Session->setFlash("Your post has been updated");
$this->redirect(array("action" => "index"));
}
}
}
}
?>

@ -0,0 +1,15 @@
<?php
class Post extends AppModel {
public $name = "Post";
public $validate = array(
"title" => array(
"rule" => "notEmpty"
),
"body" => array(
"rule" => "notEmpty"
)
);
}
?>

@ -0,0 +1,7 @@
<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");
?>

@ -0,0 +1,8 @@
<h1>Edit Post</h1>
<?php
echo $this->Form->create("Post", array("action" => "edit"));
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");
?>

@ -0,0 +1,40 @@
<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>
<?php foreach ($posts as $post): ?>
<tr>
<td><?php echo $post["Post"]["id"]; ?></td>
<td>
<?php echo $this->Html->link(
$post["Post"]["title"],
array("controller" => "posts", "action" => "view",
$post["Post"]["id"])
);
?>
</td>
<td>
<?php echo $this->Html->link(
"Delete", array("action" => "delete", $post["Post"]["id"]),
null, "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>

@ -0,0 +1,3 @@
<h1><?php echo $post['Post']['title']?></h1>
<p><small>Created: <?php echo $post['Post']['created']?></small></p>
<p><?php echo $post['Post']['body']?></p>
Loading…
Cancel
Save