- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
编辑:我是这个网站的新手,但如果您要投反对票,您能解释一下原因吗?我搜索过 Google、此网站和其他网站,但没有找到任何有意义的内容,我认为这是一个提出问题和获取帮助的网站。
我有一个自定义 PHP 论坛,我正在尝试将其转换为 Python/Django 作为学习体验,但我遇到了一些问题。我一直在阅读有关 Django 的内容,并且很高兴我们的应用程序被分成多个应用程序。我已阅读了 6 部分教程和文档的许多其他部分,但仍有一些问题。
假设我有大约 30 张 table 。
表格例如:基本论坛的 posts_index、posts、users、user_groups、user_activity、user_sessions、forum、 payment_gateways、 payment_logs 等
我在构建模型时遇到问题。对于 PHP,我需要的只是 index.php、/admin/index.php、view_forum.php、view_thread.php 和其他一些文件,所有内容都可以直接从数据库中提取,我没有任何问题,但现在我必须处理 apps/模块。
我想我需要以类似于这样的方式构建我的应用程序:
/admin/ app
/forums/ app
/view_forum/ app
/view_thread/ app
/forums/view_forum/ app (instead of just /view_forum/, could be a sub app)
/forums/view_thread/ app (instead of /view_thread/, could be a sub app)
我的问题也是唯一的问题是处理全局状态。例如,用户/组/ session /日志记录/权限信息需要通过导入其他应用程序模型文件在多个应用程序之间共享。为此,我需要引用他们的型号信息,处理此问题的正确方法是什么?
其中任何一个都可以接受吗?
创建大量不同的应用程序,例如/users/,它可以对我的 users_groups、users、user_sessions 进行建模,另一个用于/posts/的应用程序,其中包括 posts_index、论坛等的模型,但这些模型已存在,但实际上并未公开使用,它们只会在其他应用程序中使用。它们将被导入到/view_forum/应用程序等区域,因为在查看论坛时,我可能需要确定用户是否已登录、是否是特定组的成员等,因此需要访问许多隐藏的应用程序,因此将从隐藏的应用程序导入。
如果我只有一个应用程序,而不是一个应用程序,它只是我的整个项目,该怎么办?对我来说,这听起来是最好的解决方案,但如果我们无法将整个应用程序总结为一个句子,则似乎需要将其分解。如果我使用一个应用程序作为我的整个项目,我的模型文件将有 30 多个不同的模型,这是可以接受的吗?我想不会,但我想我会问。
以上任何一个有意义吗?如果不是,你会做什么修复它?我承认我迷路了,所以任何反馈都意义重大。
我是 Python/Django 新手,正在尝试解决问题。我希望我清楚我要做什么。我非常欢迎任何建议。我一直在尝试尝试一些东西,但我认为最好向更有经验的开发人员寻求建议。我不是专业程序员,仍在学习中,所以请保持友善:)。
最佳答案
我已经投票了……当我第一次转向 Django(也来自 PHP)时,我也遇到了类似的问题
尽量不要根据数据库表(或 URL 路径)来考虑应用程序,您希望为独立的功能创建应用程序。
我想说,您的大部分代码将位于一个 forum
应用程序中,其中包含 Forum
和 Post
模型以及您的所有论坛 -相关网址,例如 /view_forum/
和 /view_thread/
。请注意,Django 中并不存在真正的子应用程序...这些是不同的 View ,它们都属于单个应用程序中一组相关的功能。
“用户”的东西...您通常想要连接到 Django 身份验证系统( https://docs.djangoproject.com/en/dev/topics/auth/default/#user-objects ),但如果您试图保留遗留数据库结构,这可能会更困难...您最终可能需要您自己的用户
应用程序。
支付网关的东西听起来又像是另一个应用程序。
对于管理员来说,您可以(几乎)免费使用 Django:
https://docs.djangoproject.com/en/1.5/ref/contrib/admin/
每个应用程序中都需要一个 admin.py
,您可以在其中注册要向管理站点公开的模型。
您可能会发现最好遵循教程并构建一个简单的博客(或尝试从头开始构建一个非常简单的最小论坛),以便在处理重写之前对 Django 有所了解。因为尝试使用遗留数据库表精确地重新创建旧功能会有点困难,并且可能会导致您进入不“好的 Django”模式。
您可能还会发现查看现有 Django 论坛应用程序的源代码很有用,例如:
https://bitbucket.org/slav0nic/djangobb/src/
他们只有一个 djangobb_forum 应用程序可以完成所有操作。我认为这是完全合理的,因为论坛是一个复杂的功能。
请注意他们的 Profile
模型如何通过 OneToOneField
有效地扩展内置 Django auth.User
模型。这样可以更轻松地与内置登录和身份验证系统集成。
关于python - Django 论坛应用程序项目结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17118520/
我目前正在尝试基于哈希表构建字典。逻辑是:有一个名为 HashTable 的结构,其中包含以下内容: HashFunc HashFunc; PrintFunc PrintEntry; CompareF
如果我有一个指向结构/对象的指针,并且该结构/对象包含另外两个指向其他对象的指针,并且我想删除“包含这两个指针的对象而不破坏它所持有的指针”——我该怎么做这样做吗? 指向对象 A 的指针(包含指向对象
像这样的代码 package main import "fmt" type Hello struct { ID int Raw string } type World []*Hell
我有一个采用以下格式的 CSV: Module, Topic, Sub-topic 它需要能够导入到具有以下格式的 MySQL 数据库中: CREATE TABLE `modules` ( `id
通常我使用类似的东西 copy((uint8_t*)&POD, (uint8_t*)(&POD + 1 ), back_inserter(rawData)); copy((uint8_t*)&PODV
错误 : 联合只能在具有兼容列类型的表上执行。 结构(层:字符串,skyward_number:字符串,skyward_points:字符串)<> 结构(skyward_number:字符串,层:字符
我有一个指向结构的指针数组,我正在尝试使用它们进行 while 循环。我对如何准确初始化它并不完全有信心,但我一直这样做: Entry *newEntry = malloc(sizeof(Entry)
我正在学习 C,我的问题可能很愚蠢,但我很困惑。在这样的函数中: int afunction(somevariables) { if (someconditions)
我现在正在做一项编程作业,我并没有真正完全掌握链接,因为我们还没有涉及它。但是我觉得我需要它来做我想做的事情,因为数组还不够 我创建了一个结构,如下 struct node { float coef;
给定以下代码片段: #include #include #define MAX_SIZE 15 typedef struct{ int touchdowns; int intercepti
struct contact list[3]; int checknullarray() { for(int x=0;x<10;x++) { if(strlen(con
这个问题在这里已经有了答案: 关闭 11 年前。 Possible Duplicate: Empty “for” loop in Facebook ajax what does AJAX call
我刚刚在反射器中浏览了一个文件,并在结构构造函数中看到了这个: this = new Binder.SyntaxNodeOrToken(); 我以前从未见过该术语。有人能解释一下这个赋值在 C# 中的
我经常使用字符串常量,例如: DICT_KEY1 = 'DICT_KEY1' DICT_KEY2 = 'DICT_KEY2' ... 很多时候我不介意实际的文字是什么,只要它们是独一无二的并且对人类读
我是 C 的新手,我不明白为什么下面的代码不起作用: typedef struct{ uint8_t a; uint8_t* b; } test_struct; test_struct
您能否制作一个行为类似于内置类之一的结构,您可以在其中直接分配值而无需调用属性? 前任: RoundedDouble count; count = 5; 而不是使用 RoundedDouble cou
这是我的代码: #include typedef struct { const char *description; float value; int age; } swag
在创建嵌套列表时,我认为 R 具有对列表元素有用的命名结构。我有一个列表列表,并希望应用包含在任何列表中的每个向量的函数。 lapply这样做但随后剥离了列表的命名结构。我该怎么办 lapply嵌套列
我正在做一个用于学习目的的个人组织者,我从来没有使用过 XML,所以我不确定我的解决方案是否是最好的。这是我附带的 XML 文件的基本结构:
我是新来的 nosql概念,所以当我开始学习时 PouchDB ,我找到了这个转换表。我的困惑是,如何PouchDB如果可以说我有多个表,是否意味着我需要创建多个数据库?因为根据我在 pouchdb
我是一名优秀的程序员,十分优秀!