Joomla!2.5 ACL没有显示选项[关闭]

I'm an amateur when it comes to Joomla, as I've only began developing with this framework last week. As of right now, I'm going through the official Joomla tutorial, as found in their official Wiki. But either I'm doing something wrong, or there's something I've forgotten, or that's not mentioned in said tutorial.

The last step I've gone through was developing the access control list; however, the maintenance buttons are not showing.

Here's the code how I have it so far:

admin/views/helloworld/view.html.php

class HelloWorldViewHelloWorld extends JView {
protected $form;
protected $item;
protected $script;
protected $canDo;

public function display($tpl = NULL){
    $this->form = $this->get('Form');
    $this->item = $this->get('Item');
    $this->script = $this->get('Script');
    $this->canDo = HelloWorldHelper::getActions($this->item->id);   
    if(count($errors = $this->get('Errors'))){
        JError::raiseError(500, implode('<br />', $errors));
        return false;
    }
    $this->addToolBar();
    parent::display($tpl);
    $this->setDocument();
}

protected function addToolBar(){
    $input = JFactory::getApplication()->input;
    $input->set('hidemainmenu', true);
    $isNew = ($this->item->id == 0);
    JToolBarHelper::title($isNew ? JText::_('COM_HELLOWORLD_MANAGER_HELLOWORLD_NEW') : JText::_('COM_HELLOWORLD_MANAGER_HELLOWORLD_EDIT'), 'helloworld');
    if($isNew){
        if($this->canDo->get('core.create')){
            JToolBarHelper::apply('helloworld.apply', 'JTOOLBAR_APPLY');
            JToolBarHelper::save('helloworld.save', 'JTOOLBAR_SAVE');
            JToolBarHelper::custom('helloworld.save2copy', 'save-new.png', 'save-new_f2.png', 'JTOOLBAR_SAVE_AS_COPY', false);
        }
        JToolBarHelper::cancel('helloworld.cancel', 'JTOOLBAR_CANCEL');
    } else {
        if($this->canDo->get('core.edit')){
            JToolBarHelper::apply('helloworld.apply', 'JTOOLBAR_APPLY');
            JToolBarHelper::save('helloworld.save', 'JTOOLBAR_SAVE');
            if($this->canDo->get('core.create')){
                JToolBarHelper::custom('helloworld.save2copy', 'save-new.png', 'save-new_f2.png', 'JTOOLBAR_SAVE_AND_NEW', false);
            }
        }
        if($this->canDo->get('core.create')){
            JToolBarHelper::custom('helloworld.save2copy', 'save-new.png', 'save-new_f2.png', 'JTOOLBAR_SAVE_AS_COPY', false);
        }
        JToolBarHelper::cancel('helloworld.cancel', 'JTOOLBAR_CLOSE');
    }
}
protected function setDocument(){
    $isNew = ($this->item->id < 1);
    $document = JFactory::getDocument();
    $document->setTitle($isNew ? JText::_('COM_HELLOWORLD_HELLOWORLD_CREATING') : JText::_('COM_HELLOWORLD_HELLOWORLD_EDITING'));
    $document->addScript(JURI::root() . $this->script);
    $document->addScript(JURI::root() . "/administrator/components/com_helloworld/views/helloworld/submitbutton.js");
    JText::script('COM_HELLOWORLD_HELLOWORLD_ERROR_UNACCEPTABLE');
}
}

admin/helpers/helloworld.php (part)

abstract class HelloWorldHelper {
[...]
public static function getActions($messageId = 0){
    jimport('joomla.access.access');
    $user = JFactory::getUser();
    $result = new JObject;
    if(empty($messageId)){
        $assetName = 'com_helloworld';
    } else {
        $assetName = 'com_helloworld.message.' . (int) $messageId;
    }
    $actions = JAccess::getActions('com_helloworld', 'component');
    foreach($actions as $action){
        $result->set($action->name, $user->authorise($action->name, $assetName));
    }
    return $result;
}
}

I've tried to debug this using var_dump($this->canDo) but I'm getting no response. What am I possibly missing?


Update: var_dumping $this->canDo in views/HelloWorlds/view.html.php returns this:

object(JObject)#43 (1) { ["_errors":protected]=> array(0) { } }

Here's the call to said function in views/HelloWorlds/view.html.php:

function display($tpl = NULL){
    $this->items = $this->get('Items');
    $this->pagination = $this->get('Pagination');
    $this->canDo = HelloWorldHelper::getActions();
    if(count($errors = $this->get('Errors'))){
        JError::raiseError(500, implode('<br />', $errors));
        return false;
    }
    $this->addToolBar($this->pagination->total);
    parent::display($tpl);
    $this->setDocument();
}

As I understand you follow this tutorial. Can you please recheck one more time your code and created files? Because I 100% sure that this tutorial's step is correct (did it by myself many times). There is something you are missing or made a little mistake somewhere.

Problem solved, and it was a stupid thing I'm ashamed in myself I hadn't realized that. It's just that admin/access.xml wasn't described in helloworld.xml.