FOSCommentBundle功能包:设置Doctrine ODM映射

本文涉及的产品
云数据库 MongoDB,独享型 2核8GB
推荐场景:
构建全方位客户视图
简介:

Step 2b: Setup MongoDB mapping

The MongoDB implementation does not provide a concrete Comment class for your use,you must create one:

MongoDB实现并不提供为您所用的具体评论类,您必须要创建一个。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<?php
// src/MyProject/MyBundle/Document/Comment.php
namespace  MyProject\MyBundle\Document;
use  Doctrine\ODM\MongoDB\Mapping\Annotations  as  MongoDB;
use  FOS\CommentBundle\Document\Comment  as  BaseComment;
/**
  * @MongoDB\Document
  * @MongoDB\ChangeTrackingPolicy("DEFERRED_EXPLICIT")
  */
class  Comment  extends  BaseComment
{
     /**
      * @MongoDB\Id
      */
     protected  $id ;
     /**
      * Thread of this comment
      *
      * @var Thread
      * @MongoDB\ReferenceOne(targetDocument="MyProject\MyBundle\Document\Thread")
      */
     protected  $thread ;
}

Additionally, create the Thread class:

另外,创建线索类:

1
2
3
4
5
6
7
8
9
10
11
12
<?php
// src/MyProject/MyBundle/Document/Thread.php
namespace  MyProject\MyBundle\Document;
use  Doctrine\ODM\MongoDB\Mapping\Annotations  as  MongoDB;
use  FOS\CommentBundle\Document\Thread  as  BaseThread;
/**
  * @MongoDB\Document
  * @MongoDB\ChangeTrackingPolicy("DEFERRED_EXPLICIT")
  */
class  Thread  extends  BaseThread
{
}

Configure your application(配置您的应用程序)

In YAML:

使用YAML格式:

1
2
3
4
5
6
7
8
9
# app/config/config.yml
fos_comment:
     db_driver: mongodb
     class :
         model:
             comment: MyProject\MyBundle\Document\Comment
             thread: MyProject\MyBundle\Document\Thread
assetic:
     bundles: [  "FOSCommentBundle"  ]

Or if you prefer XML:

或者如果您偏好XML:

1
2
3
4
5
6
7
8
9
10
11
12
# app/config/config.xml
< fos_comment:config  db-driver = "mongodb" >
     < fos_comment:class >
         < fos_comment:model
             comment = "MyProject\MyBundle\Document\Comment"
             thread = "MyProject\MyBundle\Document\Thread"
         />
     </ fos_comment:class >
</ fos_comment:config >
< assetic:config >
     < assetic:bundle  name = "FOSCommentBundle"  />
</ assetic:config >

Back to the main step(返回主步骤)

Step 2: Create your Comment and Thread classes.

第2步:创建您的评论类和线索类




本文转自 firehare 51CTO博客,原文链接:http://blog.51cto.com/firehare/1256896 ,如需转载请自行联系原作者
相关实践学习
MongoDB数据库入门
MongoDB数据库入门实验。
快速掌握 MongoDB 数据库
本课程主要讲解MongoDB数据库的基本知识,包括MongoDB数据库的安装、配置、服务的启动、数据的CRUD操作函数使用、MongoDB索引的使用(唯一索引、地理索引、过期索引、全文索引等)、MapReduce操作实现、用户管理、Java对MongoDB的操作支持(基于2.x驱动与3.x驱动的完全讲解)。 通过学习此课程,读者将具备MongoDB数据库的开发能力,并且能够使用MongoDB进行项目开发。 &nbsp; 相关的阿里云产品:云数据库 MongoDB版 云数据库MongoDB版支持ReplicaSet和Sharding两种部署架构,具备安全审计,时间点备份等多项企业能力。在互联网、物联网、游戏、金融等领域被广泛采用。 云数据库MongoDB版(ApsaraDB for MongoDB)完全兼容MongoDB协议,基于飞天分布式系统和高可靠存储引擎,提供多节点高可用架构、弹性扩容、容灾、备份回滚、性能优化等解决方案。 产品详情: https://www.aliyun.com/product/mongodb
相关文章
|
9月前
|
定位技术 iOS开发
iOS设备功能和框架: 如何使用 Core Location 获取设备的位置信息?
iOS设备功能和框架: 如何使用 Core Location 获取设备的位置信息?
126 0
|
9月前
|
存储 Shell Linux
【Shell 命令集合 磁盘维护 】Linux 创建一个用作交换空间(swap space)的特殊文件或设备 mkswap命令使用教程
【Shell 命令集合 磁盘维护 】Linux 创建一个用作交换空间(swap space)的特殊文件或设备 mkswap命令使用教程
107 0
|
9月前
|
Ubuntu Linux Shell
mc实现目录同步并封装成Linux服务形式
mc实现目录同步并封装成Linux服务形式
336 11
|
9月前
|
人工智能 安全 搜索推荐
产品服务扩展模块或附加组件
产品服务扩展模块或附加组件
62 2
|
存储 Linux Shell
Linux的文件种类与拓展名
Linux的文件种类与拓展名
122 0
|
存储
修改nuget包默认存放路径,避免增加C盘的负担
修改nuget包默认存放路径,避免增加C盘的负担
401 0
修改nuget包默认存放路径,避免增加C盘的负担
|
存储 Linux
“安装centOS7.0出现‘你没有创建加载器第一阶段设备,你没有创建可引导分区’,并提示可用空间不足”的解决方案
“安装centOS7.0出现‘你没有创建加载器第一阶段设备,你没有创建可引导分区’,并提示可用空间不足”的解决方案
|
编译器 C语言 计算机视觉
QtCreator里添加外部第三库、头文件路径的方法(.pro文件)
QtCreator里添加外部第三库、头文件路径的方法(.pro文件)
1038 0
QtCreator里添加外部第三库、头文件路径的方法(.pro文件)