webForumDet fria alternativet

Class (specified by alias blog) Blog\Controller\BlogController could not be located i

0 svar · 299 visningar · startad av Dykarn

DykarnMedlem sedan mars 2005149 inlägg
#1

Hej Alla,
Forsoker lara mig ZF2 genom att modifiera Skeleton application till en blog blog.

Men nu har jag fatt ett felmedelande som sager
"Class (specified by alias blog) Blog\Controller\BlogController could not be located in provided definitions."

min BlogController.php ser ar

<code>
<?php
namespace Blog\Controller;

use Zend\Mvc\Controller\ActionController,
Blog\Model\BlogTable,
Blog\Form\BlogForm,
Zend\View\Model\ViewModel;

class BlogController extends ActionController
{

protected $blogTable; 

public function indexAction() 
{ 
    return new ViewModel(array( 
    'blogs' =\> $this-\>blogTable-\>fetchAll(), 
    )); 
} 

public function viewActions() 
{ 
    
}     

public function addAction() 
{ 
    $form = new BlogForm(); 
    $form-\>submit-\>setLabel('Add'); 
    
    $request = $this-\>getRequest(); 
    if ($request-\>isPost()) { 
        $formData = $request-\>post()-\>toArray(); 
    if ($form-\>isValid($formData)) { 
        $title = $form-\>getValue('title'); 
        $alternative_title = $form-\>getValue('alternative_title'); 
        $description = $form-\>getValue('description'); 
        $category_id = $form-\>getValue('category_id'); 
        $published_state = $form-\>getValue('published_state'); 
        $this-\>blogTable-\>addBlog($title, $alternative_title, $description, $category_id, $published_state); 
        // Redirect to list of blogs 
        return $this-\>redirect()-\>toRoute('default', array( 
                'controller' =\> 'blog', 
                'action' =\> 'index', 
            )); 
        } 
    } 
    return array('form' =\> $form); 
} 

public function editAction() 
{ 
    
} 

public function deleteAction() 
{ 
    
} 

public function setBlogTable(BlogTable $blogTable) 
{ 
    $this-\>blogTable = $blogTable; 
    return $this; 
} 

}
</code>

MIn BlogTable.php ser ut som

<code>
<?php
namespace Blog\Model;

use Zend\Db\TableGateway\TableGateway,
Zend\Db\Adapter\Adapter,
Zend\Db\ResultSet\ResultSet;

class BlogTable extends TableGateway
{
public function __construct(Adapter $adapter = null, $databaseSchema = null,
ResultSet $selectResultPrototype = null)
{
return parent::__construct('blog', $adapter, $databaseSchema,
$selectResultPrototype);
}

public function fetchAll() 
{ 
    $resultSet = $this-\>select(); 
    return $resultSet; 
} 

public function getBlog($id) 
{ 
    $id = (int) $id; 
    $rowset = $this-\>select(array('id' =\> $id)); 
    $row = $rowset-\>current(); 
    if (!$row) { 
        throw new \\Exception("Could not find row $id"); 
    } 
    return $row; 
} 


public function addBlog($title,$alternative_title,$description,$category_id,$published_state) 
{ 
    $data = array( 
        'title' =\> $title, 
        'alternative_title' =\> $alternative_title, 
        'description' =\> $description, 
        'category_id' =\> $category_id, 
        'published_state' =\> $published_state, 
    ); 
    $this-\>insert($data); 
} 


public function updateBlog($id, $title, $alternative_title, $description, $category_id, $published_state) 
{ 
    $data = array( 
       'title' =\> $title, 
       'alternative_title' =\> $alternative_title, 
       'description' =\> $description, 
       'category_id' =\> $category_id, 
       'published_state' =\> $published_state 
    ); 
    $this-\>update($data, array('id' =\> $id)); 
} 


public function deleteBlog($id) 
{ 
    $this-\>delete(array('id' =\> $id)); 
} 

}
</code>

Koden ar baserad paZF2 beta 3

132 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
130 ms — hämta tråd, inlägg och bilagor (db)