相关疑难解决方法(0)

存储python程序设置的官方方式是什么?

Django使用真正的Python文件进行设置,Trac使用.ini文件,其他一些软件使用XML文件来保存这些信息.

这些方法中有一种是由Guido和/或Python社区提供的吗?

python settings

51
推荐指数
8
解决办法
3万
查看次数

Rails:存储用户设置的最佳做法?

我想知道存储用户设置的最佳方法是什么?对于Web 2.0应用程序,我希望用户能够选择某些设置.目前只是在接收电子邮件通知时.

最简单的方法是创建一个模型"设置",并为每个设置都有一个列,然后与用户建立1-1关系.

但有更好的解决方案吗?将信息存储在用户表本身中可能更好吗?或者我应该使用带有"settings_name"和"settings_value"的表格来完全打开存储在那里的设置类型(添加选项时无需运行任何迁移)?

你有什么意见?

谢谢

settings user-controls ruby-on-rails

25
推荐指数
4
解决办法
1万
查看次数

如何在跨平台应用程序中存储首选项(和用户设置)?

我正在一个GUI桌面应用程序上工作,该应用程序应在Windows,Mac OS X和Linux上本机运行。在跨平台应用程序中存储首选项的首选方法是什么?我正在使用C ++,但是该问题(及其答案)对于任何本地编译语言都应有效。(有关动态语言和Java的解决方案,请参见此处。)

到目前为止,我的研究告诉我,至少有两种策略:
(A)使用特定于操作系统的API首选项功能。
(B)将首选项存储在适当的(特定于OS的)文件夹中的文件中。

让我们考虑方法(A):我假设这NSUserDefaults是Mac OS X的正确方法。在Windows系统上,我将通过写入注册表RegOpenKeyEx。但是,出现了一些问题:是否有与此相对应的可移植Linux API?写入Windows注册表真的是可以应对未来的解决方案吗?

为了简单起见,我倾向于遵循方法(B)。因此,我仅具有特定于操作系统的代码即可获取适当的目录,在该目录中,我可以按照自己选择的格式存储数据。在Windows上,我已经学到了SHGetFolderPath(或者SHGetKnownFolderPath对于最近的Windows系统),这CSIDL_LOCAL_APPDATA是应该走的路。在Mac上,NSSearchPathForDirectoriesInDomainsAPI调用应该执行相同的操作;尽管使事情变得更复杂,但它是一个Objective-C API。最后,对于Linux版本getenv("HOME")getpwuid()似乎建议使用(并作为备用解决方案)。

总结一下我的问题:
1.是否有任何模式被认为是此任务的最佳实践?
2.是否有C ++类将所有肮脏的事物抽象化,例如找到正确的文件夹?(我遇到了QSetting,但是我使用的是FLTK,我不想更改我的GUI工具包。)

编辑:
“首选项”是指可以由应用程序和用户更改的数据,例如最近文件列表,首选窗口大小等。

c++ cross-platform preferences fltk

5
推荐指数
1
解决办法
1797
查看次数