3.1)Data Modelling
What does Data Modeling mean?
Data modeling is a representation of the data structures in a table for a company’s database and is a very powerful expression of the company’s business requirements. This data model is the guide used by functional and technical analysts in the design and implementation of a database.
Data models are used for many purposes, from high-level conceptual models to physical data models.
Data modeling explores data-oriented structures and identifies entity types. This is unlike class modeling, where classes are identified.
Three basic styles of data modeling are generally used in practice today.
- Conceptual Data Models: High-level, static business structures and concepts
- Logical Data Models (LDMs): Entity types, data attributes and relationships between entities
- Physical Data Models (PDMs): The internal schema database design
What is PonyOrm ?
Pony is an advanced object-relational mapper. An ORM allows developers to work with the content of a database in the form of objects. A relational database contains rows that are stored in tables. However, when writing a program in a high level object-oriented language, it is much more convenient when the data retrieved from the database can be accessed in the form of objects. Pony ORM is a library for Python language that allows you to conveniently work with objects that are stored as rows in a relational database.
My app data model is as follows:

Here’s a details of what the table is all about :
- Customer table will hold the user’s personal information.
- Pinfo table will hold the uid which is the user’s id and pid which is the id of the adds.It’s main use is to act as an link between the customer table and the primary info and secondary info table.
- PrimaryInfo table will be used to store the primary and essential information of the add.
- SecondaryInfo table will store the optional informations of the add.