1

我创建了两个表,forum_post 和 gallery。

forum_post 表:

id user_id ststus photo_id

1 1 嗨……!NULL
2 1 你好!空
3 1 空 1

4 1 空 2

user_gallery 表:

id user_id 图片 视频

1 1 1.jpg 空

2 1 new.gif 空

当用户上传 user_gallery 表中的图像文件时,我想在 forum_post 表中创建一行并将图库 id 存储到 forum_post-> image 字段中。以及用户 ID 也存储在 forum_post 表中。

我在 ForumPost 中的模型代码是:

public static function addForumImage($id, $user_id) {
    $forumImage = ForumPost::model()->find('LOWER(photo_id) = ?',  array( strtolower($image)));
    if (!$forumImage) {
        $forumImage = new ForumPost;
        $forumImage->photo_id = $image;
        $forumImage->save(false);
    }

UserGallery beforeSave 功能是:

protected function beforeSave() {
    if (parent::beforeSave()) {

        ForumPost::addForumImage($this->id, $this->user_id);
        // var_dump($forumPost->photo_id);
        return true;
    }
    return false;
}

我的表关系是,user_gallery->image 指的是 forum_post->photo_id。

现在,图像存储在 user_gallery 文件夹中,我想在 ForumPost 模型中获取 id ...请任何人帮助我.. :(

4

1 回答 1

1

尝试这个

protected function beforeSave() {
    if (parent::beforeSave()) {

        ForumPost::addForumImage($this->id, $this->user_id, $this->forum_image);
        // var_dump($forumPost->photo_id);
        return true;
    }
    return false;
}

模型

    public static function addForumImage($id, $user_id,$image) {
        $forumImage = ForumPost::model()->find('photo_id = :image',  array( ':image'=>strtolower($image)));
        if (empty($forumImage)) {
            $forumImage = new ForumPost;
            $forumImage->user_id=$user_id;
            $forumImage->content= NULL
            $forumImage->photo_id = $image;
            $forumImage->save(false);
        }
}
于 2013-12-27T07:40:03.540 回答