如何保存从imageData保存文件ID?

时间:2014-07-24 13:57:40

标签: php mongodb gridfs lithium

嗨,大家有问题将图片ID保存到我的新闻集中,对此非常新,所以只是试图掌握存储信息和使用gridFS希望有人可以帮助我进步一点

类:

public function add() {
    $data = $this->request->data;
    $article = News::create();
    if ($data) {
        $articleData = $data;
        unset($articleData['file']['name']);
        if ($article->save($articleData)) {
            $image = Images::create();
            $imageData = ['file' => $data['file']];
            if ($image->save($imageData) && $article->save($imageData)) {
                $this->redirect('News::manage');
            }
        }
    }
    return compact('article', 'image');
}

Mongo Doc Collection:

{
_id: ObjectId("53d10f01054ff37a07000000"),
body: "d",
created: ISODate("2014-07-24T13:49:53Z"),
file: {
    name: "front.jpg",
    type: "image/jpeg",
    tmp_name: "/tmp/phpKjSqbn",
    error: 0,
    size: 55227
},
modified: ISODate("2014-07-24T13:49:53Z"),
title: "d"

}

可能只是个白痴?

嗨再次,我已对该功能进行了一些修改,但仍未设法从文件中获取_id以存储到我的新闻集中,任何人都可以帮忙吗?如果你看看我调试时会发生什么

object(MongoId)[98]
  public '$id' => string '53d23bfb054ff3b91100000f' (length=24)

然后你看看我的功能...

public function add() {
    $data = $this->request->data;
    $article = News::create();
    if ($data) {
        $articleData = $data;
        unset($articleData['file']);
        if ($article->save($articleData)) {
            $image = Images::create();
            $imageData = ['file' => $data['file']];
            if ($image->save($imageData)) {
                $imageData = $image->_id;
                debug($image->_id, true);
                if ($article->save($imageData)) {
                    $this->redirect('News::manage');
                }
            }
        }
    }
    return compact('article', 'image');
}

似乎没有存储到变量

0 个答案:

没有答案
相关问题