Symfony1 Symfony私人消息
我想在我的网站上发送私人消息。我希望用户可以删除收到或发送的消息。对于它,我需要两个表,一个用于发送消息,一个用于接收…当用户发送消息时,它是否可能自动添加两个表?还是最好与表建立一些关系?或者可能存在更好的解决方案?也许,您应该创建一个消息表,与用户表有两个关系:Symfony1 Symfony私人消息,symfony1,doctrine,symfony-1.4,private-messaging,Symfony1,Doctrine,Symfony 1.4,Private Messaging,我想在我的网站上发送私人消息。我希望用户可以删除收到或发送的消息。对于它,我需要两个表,一个用于发送消息,一个用于接收…当用户发送消息时,它是否可能自动添加两个表?还是最好与表建立一些关系?或者可能存在更好的解决方案?也许,您应该创建一个消息表,与用户表有两个关系: message: columns: user_emitter_id: ... user_reciever_id: ... body: ... relations: userEmitter:
message:
columns:
user_emitter_id: ...
user_reciever_id: ...
body: ...
relations:
userEmitter:
class: user
local: user_emitter_id
foreign: id
userReciever:
class: user
local: user_reciever_id
foreign: id
也许,您应该创建一个消息表,与用户表有两个关系:
message:
columns:
user_emitter_id: ...
user_reciever_id: ...
body: ...
relations:
userEmitter:
class: user
local: user_emitter_id
foreign: id
userReciever:
class: user
local: user_reciever_id
foreign: id
有一个symfony插件可以让你做到这一点。检查。有一个symfony插件允许您执行此操作。检查。我想您只需要一张桌子:
Message:
columns:
from: integer
to: integer
header: string(100)
body: blob
show_in_outcoming:
type: boolean
default: true
show_in_incoming:
type: boolean
default: true
is_read:
type: boolean
default: false
UserFrom:
class: sfGuardUser
local: from
foreign: id
foreignType: one
type: one
UserTo:
class: sfGuardUser
local: to
foreign: id
foreignType: one
type: one
在哪里
- is_read表示消息是否已被读取(false-未读,true-已读-仅适用于传入消息)
如果收到消息的用户想要删除它,我们也会隐藏它-将show_in_incoming设置为false。这种方法允许我们恢复“隐藏”的消息(或完全删除它们)我认为您只需要一个表:
Message:
columns:
from: integer
to: integer
header: string(100)
body: blob
show_in_outcoming:
type: boolean
default: true
show_in_incoming:
type: boolean
default: true
is_read:
type: boolean
default: false
UserFrom:
class: sfGuardUser
local: from
foreign: id
foreignType: one
type: one
UserTo:
class: sfGuardUser
local: to
foreign: id
foreignType: one
type: one
在哪里
- is_read表示消息是否已被读取(false-未读,true-已读-仅适用于传入消息)
如果收到消息的用户想要删除它,我们也会隐藏它-将show_in_incoming设置为false。此方法允许我们恢复“隐藏”消息(或完全删除它们)但当用户删除例如接收消息时,发送此消息的用户也将删除此消息。请勿删除消息。。。只需将user_receiver_id或user_emitter设置为null.hm,这样好吗,不要从数据库中删除消息?嗯,我想我应该这样做。但是当用户删除例如接收消息时,它也会删除发送此消息的用户。不要删除消息。。。只需将user_receiver_id或user_emitter设置为null.hm,这样好吗,不要从数据库中删除消息?嗯,我想我应该这样做。谢谢你!我现在,我现在使用这个插件,但它并不完全是我需要的。现在我禁用了除私人消息之外的所有功能,但在发送消息之前,您需要发送“好友请求”,并且无法删除消息/并且sfDoctrineGuard和sfSocial之间存在一些小冲突…因此我想编写我自己的简单pm)谢谢!我现在,我现在使用这个插件,但它并不完全是我需要的。现在我禁用了除私人消息之外的所有功能,但在发送消息之前,您需要发送“好友请求”,并且无法删除消息/并且sfDoctrineGuard和sfSocial之间存在一些小冲突…因此我想编写我自己的简单pm)谢谢!什么是类型字段?列类型告诉我们消息是收入消息还是支出消息。此列将自动添加到创建表
message
SQL查询(如果正在生成)键入VARCHAR(255)。这就是列聚合继承如何知道数据库中每条记录所属的模型。我不太了解条令表继承(我也不明白它是如何工作的)我有一个表,但有三个模型。我想为消息生成一个模块,我需要为消息表生成一个模块?我将在我的DB中为一条消息生成一条记录,对于一个用户,它将输出,对于其他传入…我想,我理解你。我对我的答案稍作修改。是的,这是真的,但我认为还需要一个专栏,is_readSender,is_readRecipiend…?谢谢!什么是类型字段?列类型告诉我们消息是收入消息还是支出消息。此列将自动添加到创建表message
SQL查询(如果正在生成)键入VARCHAR(255)。这就是列聚合继承如何知道数据库中每条记录所属的模型。我不太了解条令表继承(我也不明白它是如何工作的)我有一个表,但有三个模型。我想为消息生成一个模块,我需要为消息表生成一个模块?我将在我的DB中为一条消息生成一条记录,对于一个用户,它将输出,对于其他传入…我想,我理解你。我稍微改变了我的答案。是的,这是真的,但我认为还需要一个专栏,is_readSender,is_readRecipiend。。。?