缺少控制器不读取dropbox添加功能Cakephp获取视图模型未找到

时间:2013-07-18 02:52:07

标签: cakephp controller action

我的控制器中有以下代码,它从Dropbox选择器获取值。

<?php class DropboxboxfilesController extends AppController {

  public function add() {
    if ($this->request->is('post')) {
        $this->request->input('json_decode');
        $this->Dropboxfile->create();
        if ($this->Dropboxfile->save($this->request->data)) {
            $this->Session->setFlash(__('Your file has been liberated :)'));
            $this->redirect($this->referer());
        } else {
            $this->Session->setFlash(__('Something went wrong!'));
        }
    }
}}?>

但是,当我在选择器的提交按钮上按下提交时,我收到错误,表示添加功能不存在。

我尝试了几件事,但到目前为止似乎没有任何工作。

编辑: 查看代码

<?php echo $this->Form->create('Dropboxfile', array ('array' => 'file')); ?>
<input type="dropbox-chooser" name="selected-file" style="visibility: hidden;"/>  
<?php echo $this->Form->end('Finish'); ?>

我使用的保管箱代码https://www.dropbox.com/developers/dropins/chooser/js

修改

<form action="/cake/homes" array="file" id="DropboxfileIndexForm" method="post" accept-    carset="utf-8"><div style="display:none;"><input type="hidden" name="_method" value="POST"/></div><input type="dropbox-chooser" name="selected-file" style="visibility: hidden;"/>  
<div class="submit"><input type="submit" value="Finish"/></div></form 

1 个答案:

答案 0 :(得分:0)

你在$ this-&gt; Form-&gt; create()中使用了错误的第二个参数格式。请注意,在解析的表单元素中,它具有无效的“array =”file“'元素,并且该操作不会导致添加操作。试试这个:

<?php 
echo $this->Form->create(
    'Dropboxfile', 
    array(
        'url' => array('action' => 'add'),
        'type' => 'file'
    )
);
?>