首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Symfony私密消息

Symfony私密消息
EN

Stack Overflow用户
提问于 2011-06-29 20:52:13
回答 4查看 528关注 0票数 0

我想在我的网站上发私信。我希望用户可以删除收到或发送的消息。我需要两个表,一个用于发送消息,一个用于receive....Is,这样当用户发送消息时,它会自动添加两个表?或者更好的做法是与表建立一些关系?或者可能存在更好的解决方案?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2011-06-29 22:30:58

我想你只需要一张桌子:

代码语言:javascript
复制
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_outcoming设置为false。如果收到消息的用户想要删除它,我们也将其隐藏起来--将show_in_incoming设置为false。这种方法允许我们恢复“隐藏的”消息(或者完全删除它们)

票数 2
EN

Stack Overflow用户

发布于 2011-06-29 21:43:14

也许,您应该创建一个消息表,与用户表有两个关系:

代码语言:javascript
复制
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
票数 1
EN

Stack Overflow用户

发布于 2011-06-29 21:56:44

有一个symfony插件可以让你做到这一点。检查sfSocialPlugin

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

https://stackoverflow.com/questions/6520922

复制
相关文章

相似问题

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