Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sqlite 在iOS上存储100个项目(可能1000个)列表数据的最佳方法_Sqlite_Swift_Core Data_Plist_Nsuserdefaults - Fatal编程技术网

Sqlite 在iOS上存储100个项目(可能1000个)列表数据的最佳方法

Sqlite 在iOS上存储100个项目(可能1000个)列表数据的最佳方法,sqlite,swift,core-data,plist,nsuserdefaults,Sqlite,Swift,Core Data,Plist,Nsuserdefaults,我正在开发一个应用程序,它提供一个帖子提要,并允许用户对这些帖子进行投票 我想防止用户在一篇文章上多次投票。为了做到这一点,我想存储一个已经投票的帖子的id列表,这样每次用户尝试投票时我都可以检查 如果用户有可能在一年内对多达数千篇帖子进行投票,那么存储这些帖子ID的最有效方法是什么 Sqlite、核心数据、p列表或nsuserdefaults?既然您也想知道有多少人投票(我想),我会将其保存到服务器(使用Sqlite存储)。 将其保存在用户设备上似乎是多余的。 如果您确实想存储它,我会建议核心

我正在开发一个应用程序,它提供一个帖子提要,并允许用户对这些帖子进行投票

我想防止用户在一篇文章上多次投票。为了做到这一点,我想存储一个已经投票的帖子的id列表,这样每次用户尝试投票时我都可以检查

如果用户有可能在一年内对多达数千篇帖子进行投票,那么存储这些帖子ID的最有效方法是什么


Sqlite、核心数据、p列表或nsuserdefaults?

既然您也想知道有多少人投票(我想),我会将其保存到服务器(使用Sqlite存储)。
将其保存在用户设备上似乎是多余的。
如果您确实想存储它,我会建议核心数据。

对于NSUserdata、plists来说,信息太多了……我不知道为什么,但这似乎不是一个好主意,Coredata只是Sqlite的一个更好版本(用于快速使用)

此应用程序不使用任何用户帐户。所以,除非每次安装应用时我都生成一个唯一的标识符,否则我将无法记录人们的投票。为什么人们可以投票?如果你想对投票做些什么,你必须存储有多少人投票,所以你必须把他们保存在某个地方。(由于缺乏信息,我在这里做出假设)。用户卸载应用程序时,您建议的所有选项都将被清除。如果用户每次都重新安装应用程序,那么他可以在同一帖子上无限次投票吗?如果是,请继续在本地存储,否则您需要将信息存储在服务器上。投票将存储在服务器上,但用户不需要帐户即可使用此应用。如果他们一遍又一遍地重新安装,我同意他们可以多次投票(因为我认为不太可能有人愿意这么做),而且我仍然没有看到一个编辑给你的问题来包含这个非常(非常)重要的数据。如果投票存储在服务器上,为什么你不直接请求带有userId的帖子列表呢(应用程序首次启动时生成)…如果具有此id的用户已投票或未投票,服务器只能发送布尔值。您所描述的内容没有多大意义。在典型的客户机-服务器系统中,服务器应该是真相的最终来源。除非服务器能够确定客户机是否已投票,否则投票没有意义。您不必创建“用户配置文件”本身,但您绝对需要一种方法来唯一地标识彼此之间的客户端。