首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何将值添加到doctrine中的数组模型?

如何将值添加到doctrine中的数组模型?
EN

Stack Overflow用户
提问于 2010-06-18 22:45:53
回答 2查看 289关注 0票数 1

我将Doctrine与Codeigniter一起使用,我将我的评级列定义为$this->hasColumn(' ratings ','array',1000);。我正在使用

代码语言:javascript
运行
复制
      $res = Doctrine::getTable('Resource')->find($resource\_id);   $res->ratings = $rating;   $res->save(); but only the $rating gets inserted, overwriting the last value, I want to store the ratings as an array, ex: 1,5,4,2,3,5,1 etc.. How do I add/retrieve values from a table column defined as array with Doctrine? (I'm using mysql)
EN

回答 2

Stack Overflow用户

发布于 2010-06-20 02:13:18

我设法做到了,我将在下面发布代码,也许有人会发现它很有用

代码语言:javascript
运行
复制
    public function add_rating() {
        $rating = (int) $this->uri->segment(3);
        $resource_id = (int) $this->uri->segment(4);
        if((is_numeric($rating)) && ($rating > 0) && ($rating <= 5)) {
            $res = Doctrine::getTable('Resource')->find($resource_id);
            $ratings = $res->ratings;
            $ratings[] = $rating;
            $res->ratings = $ratings;
//          echo '<pre>';
//          echo  print_r($ratings);
            $res->save();
        }
        redirect('/home/show/' . $resource_id);
    }
票数 1
EN

Stack Overflow用户

发布于 2010-06-19 16:43:16

我不熟悉CodeIgniter,但是因为Doctrine“数组”类型等同于MySQL文本类型,所以在PHP中,我会使用implode()和explode()函数来创建一个以逗号分隔的值字符串,并将其存储为文本字符串。MySQL VARCHAR可能更适合您的需要。Doctrine的等价物是"string“。

希望这能有所帮助。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3070606

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档