zoukankan      html  css  js  c++  java
  • swift coredata relationship

    coredata relationship 开发过程有很多细节需要大家注意。稍有不慎就会困在某个地方无法动弹。

    1. 创建Entity  ContactsDetail(成员)和 ContactsGroup(组)
    2. ContactsDetail添加属性,并设置属性value类型
    3. ContactsGroup添加属性,并设置属性value类型
    4. ContactsDetail添加relationship,起名字。并Destination为ContactsGroup,Inverse选定为detail。Delete Rule设定为Nullify(无效)
    5. ContactsGroup,添加relationship。起名字。并Destination为ContactsDetail,Inverse选定为contactsGroup。Delete Rule设定为Cascade(串联)
    6. 生成所需文件(.h   .m )完成前期准备工作

    开始代码

    **********************************调用方法**********************************

    获取所有组

    controlListArray = DataBaseClass.DBContactsGroupReadAllData()

    插入一个组

    DataBaseClass.DBContactsGroupInsert(["name":input!])

    删除一个组

    let group = controlListArray![indexPath.row] as ContactsGroup

    DataBaseClass.DBContactsGroupDeleteObject(group)

    获取指定组中所有成员(要把组实体对象传入)

    controlListArray = DataBaseClass.DBContactsDetailReadAllData(currentGroup!)

    指定组中创建一个成员

    DataBaseClass.DBContactsDetailInsert(group!, dataDic: ["name":"张三", "sex":"男", "age":"18"])

    删除指定组中某个成员

    let detailData = controlListArray![indexPath.row] as ContactsDetail

    DataBaseClass.DBContactsDetailDeleteObject(detailData)

    细节备注

    1. 创建关系时,选择Inverse可能会没有值.要把两个实体的关系全部创建并命名,然后就可以分别选择了
    2. 删除组,成员却没有从“数据库”中删除。组关系的Delete Rule一定要选择Cascade(就是 串联起来,串联删除)

    效果图参考

  • 相关阅读:
    Codeforces Round #604 (Div. 2) E. Beautiful Mirrors 题解 组合数学
    洛谷P1002 过河卒 题解 动态规划
    python 查看数据类型
    python 输出小技巧
    python 基础定义变量
    python 关键字
    flask restful 反查询
    Please edit configuration/connection/logging settings in '/home/mac126/Desktop/13/test3-1/migrations/alembic.ini' before proceeding.
    KeyError: 'migrate'错误解决办法
    flask 的简单拆分升级版2
  • 原文地址:https://www.cnblogs.com/madaha/p/4204217.html
Copyright © 2011-2022 走看看