使用Parse的MVC框架

问题描述 投票:2回答:1

在我的应用程序中,我有一个控制所有TableViewController对象的Habit。因此,当他们从Parse进来时,我拿出每个PFObject并用它们各自的属性(名称,当前条纹,创建日期,创建它的用户)从中创建一个新的Habit对象。加载后,用户可能会删除,编辑,添加新习惯,这让我不知道应该如何处理所有这些修改?

我应该继续使用我的Habit对象,并且每次修改上传对Parse或简单的更改都会将Habit对象从中删除并处理PFObjects,这反过来又让我为每次修改编写更少的代码。

一个例子:

当用户创建一个新习惯时,我可以创建新的Habit对象和PFObject,如下所示:

    Habit *habit = [Habit habitWithTitle:self.habitField.text];
    habit.frequency = self.howOften;
    habit.currentStreak = @0;

    // add it to back end
    PFObject *newHabit = [PFObject objectWithClassName:@"Habit"];
    newHabit[@"name"] = self.habitField.text;
    newHabit[@"currentStreak"] = @0;

或忘记Habit类并使用PFObjects并传递它们:

    PFObject *newHabit = [PFObject objectWithClassName:@"Habit"];
    newHabit[@"name"] = self.habitField.text;
    newHabit[@"frequency"] = self.howOften;
    newHabit[@"currentStreak"] = @0;

另一个例子是当从tableViewCell滑动中删除习惯时,我必须从PFObject对象创建Habit,以便将其发送到后端,找到并删除它。

MVC的用武之地:我的理解是,在这种情况下,Habit对象是模型,View是很好的视图,控制器是我的类来管理这两者之间的交互。我的模型可以是PFObjects吗?

ios objective-c
1个回答
0
投票

如果继续上述方法,唯一的缺点是,如果项目中有多个需要转换为PFObject对象的模型,那么最终会围绕这些模型提供大量代码。

您可以编写一个单独的类,作为处理PFObject对象(写入/读取PFObject对象)的包装器,这样将与对象模型(例如Habit)映射到PFObject相关的逻辑集中在一个地方。

© www.soinside.com 2019 - 2024. All rights reserved.