我以这种方式设计了我的django网站数据库的架构。
人:
汽车:
自行车:
我已经使用django-tastypie将其转换为API。我想使用xamarin为此构建一个移动应用程序。该应用程序将有一个用于存储这些值的数据库。但是,用于存储这些值的Java / C#方法类似于
class person{
String name;
int age;
String gender;
List<Car> listofcars;
List<Bike> listofbikes;
}
这与数据库的结构不同。
这种情况下的有效方法是什么?
1。)我的app数据库模式应该与我的服务器数据库模式完全相同吗?这样,在服务器和客户端之间同步值很容易。但要获得自行车或汽车列表,我需要执行多个查询。
2。)或者我应该为我的应用程序开发一个不同的架构,以便我开发应用程序。同步的唯一缺点是不容易的。
答案 0 :(得分:1)
A database schema is just an abstract formal description of how you are storing your data.。 Django模型或MySQL DDL定义只是以具体方式表达这个抽象概念的方式。
例如,你的django模型和C#代码都描述了这个抽象的概念:
person
有name
,age
,gender
,可以有bikes
和cars
的集合。
最终,如果您的移动应用,API和Django网络应用能够进行通信,则必须包含并共享完全相同的信息。否则,您的系统将在传输之间丢失信息 - 例如,如果应用程序省略了年龄,并且django省略了性别,则在几次调用之后,您的数据库都没有。
您的移动应用和django应用程序是否必须拥有来自完全相同的地方的架构,但这对于很少的回报肯定会更难。例如,作为构建策略的一部分,您可以让django生成用于构建表的DDL,然后将其传递给应用程序。