Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[ADD] README.md : Add Resume for Odoo Studio/Chap2 - views #23

Merged
merged 2 commits into from
Jun 11, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
131 changes: 129 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -86,6 +86,8 @@ docker logs -f postgres_odoo17Learning

Now that your server is running, it's time to write our own application! 😎

---

## Chapter 2 : A New Application.

📖 The purpose of this chapter is to embark on a journey of creation, laying the very foundation for a brand new `Odoo module`. Imagine starting from scratch, with only the bare essentials needed to catch Odoo's attention. As we progress through the chapters, we'll add layers of features, weaving a tapestry of a realistic business case.
Expand Down Expand Up @@ -114,6 +116,8 @@ Now that your server is running, it's time to write our own application! 😎

📜 With the groundwork laid, our adventure continues as we prepare to `create our first model`. Exciting times lie ahead as we breathe life into our module, one enchanting step at a time.

---

## Chapter 3 : Models And Basic Fields

🏰 Picture our `Odoo module` as a freshly built house - sturdy and promising, yet lacking the warmth of life within its walls. In this chapter, our quest was to breathe life into our module by giving it the ability to `store data`. 💼
Expand All @@ -140,6 +144,8 @@ Yet, our work was not complete until we ensured the `integrity` of our `data`. W

And so, our journey through Chapter 4 came to an end, but our module was now imbued with the power to `store and manage` real estate `data`. With each step forward, our `module` grew stronger, paving the way for greater adventures in the realm of `Odoo`. 🚀

---

## Chapter 4: Security - A Brief Introduction

In the journey of building our `Odoo module`, we've ventured into the realm of `security`, a crucial aspect in any software application, especially when it comes to managing `sensitive` business `data`. 🏰
Expand All @@ -158,6 +164,8 @@ In our journey, we've set out to `grant access rights` to the `base.group_user`,

With `access rights` in place, our module's `security` is fortified, and we're now ready to open the gates and let users interact with our `module's user interface`, marking the next phase of our adventure in Odoo development. 🚀

---

## Chapter 5: Finally, Some UI To Play With

Now that we've laid the foundation with our new `model` and access rights, it's time to dive into the exciting world of `user interface` interaction. 🚀
Expand Down Expand Up @@ -188,6 +196,8 @@ Certain `fields` in Odoo come with `predefined behaviors`, guiding how data beha

With each step, we're unlocking new possibilities in our journey with `Odoo`. As we delve deeper into defining our `views`, the interface becomes not just a canvas but a portal to a seamless `user experience`. 🌟

---

## Chapter 6: Basic Views

🌟 In our journey through Odoo's realm, we've ventured into crafting `models` and setting up `access rights`. Now, it's time to give our application a face, a `user interface` where users can interact and bring our creation to life.
Expand Down Expand Up @@ -219,6 +229,8 @@ As we sculpt these `views`, remember, it's not just about aesthetics. It's about

We're just scratching the surface here. There's still much to explore, like `custom filters` and `grouping`. But for now, let's revel in the joy of creating `views` that make our `app shine`.

---

## Chapter 7: Relations Between Models

In our quest to build the ultimate `real estate management system`, we've journeyed through the intricacies of crafting `models` and designing intuitive `views`. Now, armed with a deeper understanding of how `views` shape user `interaction`, we venture into the realm of `model relationships`.
Expand Down Expand Up @@ -264,6 +276,8 @@ And so, armed with the knowledge of `model relationships`, we embark on the next
> Because a `One2many` is a `virtual` relationship, there must be a `Many2one` field defined in the `comodel`.


---

## Chapter 8: Computed Fields And Onchanges

In our journey to master the intricacies of Odoo 17, we find ourselves standing at the threshold of a new frontier: `computed fields` and `onchange` mechanisms. These may sound daunting, but fear not, for they hold the key to unlocking the true potential of our `real estate` management system.
Expand Down Expand Up @@ -303,6 +317,8 @@ Armed with the knowledge of `computed fields` and `onchanges`, we stand poised t

So, dear traveler, let us march forward with confidence, for the path ahead is paved with boundless opportunities to shape the future of `real estate` management with Odoo 17.

---

## Chapter 9: Ready For Some Action?

As we continue our odyssey through the realms of Odoo 17, we find ourselves at a pivotal juncture, where the concepts of `computed fields` and `onchange` mechanisms have laid the foundation for even greater feats within our `real estate` management system.
Expand Down Expand Up @@ -351,6 +367,8 @@ So, fellow voyager, let us embark on this journey with heads held high, for the
> <button type="action" name="your_module.action_name" string="Button Label"/>
> ```

---

## Chapter 10: Constraints

With the dawn of Chapter 9, we embraced the power of `action buttons`, transforming our real estate management system into a dynamic marketplace of possibilities. Yet, as our journey unfolded, we encountered a new challenge: ensuring the integrity of our data amidst the ever-changing currents of user input.
Expand Down Expand Up @@ -393,6 +411,8 @@ In Chapter 11, we fortified our realm with the formidable tools of SQL and Pytho

As we embark upon Chapter 12, our mission is clear: to add the final touches that will elevate our real estate management system from a mere tool to a delightful and intuitive platform for property management.

---

## Chapter 11: Add The Sprinkles

### Adding Visual Flair:
Expand Down Expand Up @@ -436,6 +456,8 @@ As we embark upon Chapter 12, our mission is clear: to add the final touches tha

As we embark upon this journey to add the final sprinkles to our `real estate module`, we do so with a sense of purpose and determination. With each enhancement we introduce, we draw closer to our vision of creating a user experience that is both delightful and `intuitive`, setting the stage for a new era in property management with Odoo 17.

---

## Chapter 12: Inheritance 🏰

After adding the final 🎨 decorative touches to our 🏠 `real estate module` in the previous chapter, we now dive into this chapter to explore even more features that enhance the user experience.
Expand Down Expand Up @@ -464,6 +486,8 @@ For example, we ➕ `add a new tab` in the user view to display a list of `avail

By `fine-tuning` details, `adding` new features, and `refining` the user interface, we shape Odoo to perfectly meet the needs of our business, paving the way for even more efficient and effective `real estate` management with Odoo 17. 🌟

---

## Chapter 13: Interact With Other Modules 🤝

Building upon the foundation laid in previous Chapter, where we delved into the art of inheritance to enhance our `real estate module`, we now embark on a new journey of `integration` and collaboration.
Expand Down Expand Up @@ -513,6 +537,8 @@ With each step, our `real estate` solution evolves into a comprehensive and inte

As we navigate through this integration journey, we draw closer to our vision of creating a seamless and intuitive real estate management solution with Odoo 17. 🏡🔧

---

## Chapter 14: A Brief History Of QWeb

Building upon the harmonious collaboration achieved in previous chapter, where our `real estate module` intertwined with the `Invoicing module`, we now embark on a quest to infuse our interface with unparalleled charm and flexibility. 🌟
Expand All @@ -537,6 +563,8 @@ And as the final touch to our masterpiece, we invoke the ancient magic of `defau

As our journey through the realm of `QWeb` comes to a close, we emerge as masters of `interface design`, armed with the knowledge and skills to create captivating and immersive experiences for our users. With `QWeb` as our guide, we continue to push the boundaries of what is possible, forging new paths and unlocking new horizons in the world of `Odoo development`. 🚀

---

## Chapter 15: The final word

As our journey through the realm of `Odoo` nears its conclusion, we stand on the precipice of greatness, poised to embark on one final quest: the `pursuit of perfection` in our code. 🏰
Expand All @@ -555,6 +583,8 @@ And so, dear traveler, as our odyssey draws to a close, we invite you to join us

SEE YOU NEXT 😃

---

## Contributing

### Coding guidelines
Expand All @@ -565,6 +595,7 @@ You see, `proper code` was more than just lines on a screen; it was the key to u

But heed this warning, dear reader: when treading upon the paths of `stable versions`, thou shalt not tamper with existing files! For the style of those files is sacred, and any attempt to alter them would disrupt the very fabric of `revision history`. Keep thy changes minimal, and let the `original style` reign supreme.


#### Module structure

And in the land of `directories`, where modules took shape, there lay the heart of business logic. From `data` to `models`, `controllers` to `views`, each directory whispered its purpose to those who dared to listen.
Expand Down Expand Up @@ -645,6 +676,8 @@ As the tale unfolds, we witness the convergence of `CSS` and `SCSS`, blending th

And so, dear reader, as we bid adieu to this culinary journey through the world of CSS and SCSS, let us remember that much like cooking, `web development` is an art form where creativity and precision go hand in hand. 🎨✨

---

### Git guidelines

In the vast realm of Odoo, where developers journey through lines of code like explorers navigating uncharted lands, there exists a sacred tradition known as `Git guidelines`. Passed down through generations of programmers, these guidelines serve as a beacon of order amidst the ever-changing sea of code.
Expand Down Expand Up @@ -687,10 +720,11 @@ And remember, fellow developer, the importance of your words cannot be overstate

And so, dear reader, as we conclude this tale of `Git guidelines` in Odoo, let us remember the lessons learned from the culinary world. Just as a well-crafted dish delights the palate, a well-composed `commit message` brings clarity and understanding to the realm of code. 🖥️🍽️

---

## Odoo Studio

### Chapter 1 : Fields and Widgets in Odoo
## Chapter 1 : Fields and Widgets in Odoo

Imagine you're designing a database model. Picture it as a table or a spreadsheet. Here, fields are like the columns, storing specific types of data in each row (record).

Expand Down Expand Up @@ -797,4 +831,97 @@ Let's break down these fields and their widgets in simple terms. 🛠️
8. **Default value**: Set a predefined value for new records. 🆕
9. **Limit visibility to groups**: Restrict field visibility to specific user groups. 🔐

By understanding and configuring these fields and widgets in Odoo 17, you can create a robust and user-friendly database model, tailored to your specific needs. 🏗️💼
By understanding and configuring these fields and widgets in Odoo 17, you can create a robust and user-friendly database model, tailored to your specific needs. 🏗️💼

Here's a summary of the "Views" section in the Odoo 17 documentation, now with some emojis to make it more engaging:

---

## Chapter 2 : Views in Odoo 17 🌐

Views in Odoo are like different lenses through which you can look at your data.

Imagine you have a treasure chest of information, and views are the various ways you can arrange and display that treasure to make it useful.

Each model, which you can think of as a type of data collection (like contacts or sales orders), can have several views to present the same data differently.

In Odoo Studio, views are grouped into four main categories: general, multiple records, timeline, and reporting. 🌟

#### General Views 📋

1. **Form View** ✍️
- This is used for creating and editing individual records, such as adding a new contact or editing a product.
- You can organize the form using tabs and columns and control user permissions to create, edit, or delete records.
- ![Studio Form View Capture](docs/images/studio-chap2-form.png)

2. **Activity View** 📅
- This view is for scheduling and viewing activities (like emails and calls) related to records.
- To modify it, you need to dive into XML code in `Developer mode`.
- ![Studio Activity View Capture](docs/images/studio-chap2-activity.png)

3. **Search View** 🔍
- This view helps you filter, group, and search through records.
- You can add custom filters and set up autocomplete fields for a smoother search experience.
- ![Studio Search View Capture](docs/images/studio-chap2-search.png)


#### Multiple Records Views 📊

1. **Kanban View** 🗂️
- Ideal for managing workflows, this view displays records as cards that you can move across stages.
- It’s especially handy for tasks and project management.
- On mobile devices, Kanban view is the default instead of the List view.
- ![Studio Kanban View Capture](docs/images/studio-chap2-kanban.png)
-

2. **List View** 📑
- This view lets you see many records at once, making it easy to search and edit simple records.
- You can enable mass editing, sort records, and control user permissions for creating, editing, or deleting records.
- ![Studio List View Capture](docs/images/studio-chap2-list.png)

3. **Map View** 🗺️
- This view shows records on a map, useful for planning routes in field service applications.
- You need a link to contact addresses to position the records correctly.
- ![Studio Map View Capture](docs/images/studio-chap2-map.png)

#### Timeline Views ⏳

1. **Calendar View** 📆
- Perfect for managing records that need scheduling, this view displays records in a calendar format.
- You can enable quick creation of events and color-code records for easy identification.
- ![Studio Calendar View Capture](docs/images/studio-chap2-calendar.png)

2. **Cohort View** 📈
- This view analyzes the lifecycle of records over time, useful for understanding trends like customer retention in subscription services.
- ![Studio Cogort View Capture](docs/images/studio-chap2-cohort.png)

3. **Gantt View** 📅
- Used for project planning, this view shows records as bars on a timeline, helping you track progress and manage schedules.
- You can customize it to show unavailable times (like weekends) and group records by categories.
- ![Studio Gantt View Capture](docs/images/studio-chap2-gant.png)

#### Reporting Views 📊

1. **Pivot View** 📊
- A powerful tool for data analysis, this view allows you to aggregate and explore numeric data.
- You can group data by rows and columns and measure various fields to gain insights.
- ![Studio Pivot View Capture](docs/images/studio-chap2-pivot.png)

2. **Graph View** 📉
- This view displays data in bar, line, or pie charts.
- You can choose the default chart type, sort data, and access records directly from the chart.
- ![Studio Graph View Capture](docs/images/studio-chap2-graph.png)

3. **Dashboard View** 📊
- This view combines multiple reporting views and key performance indicators into one comprehensive display, giving you an overview of important metrics at a glance.
- ![Studio Dashboard View Capture](docs/images/studio-chap2-dashboard.png)

### Tips for Modifying Views 🛠️

- To change a model's default view, navigate to Studio, select Views, use the dropdown menu (⋮), and choose "Set as Default."
- For advanced customization, use the built-in XML editor in Developer mode.
- However, avoid modifying standard views directly; instead, create and edit inherited views to ensure changes persist through updates.

By understanding and utilizing these different views in Odoo 17, you can effectively manage and display your data, tailoring the experience to meet your specific needs. 💡

---
Binary file added docs/images/studio-chap2-activity.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/images/studio-chap2-calendar.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/images/studio-chap2-cohort.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/images/studio-chap2-dashboard.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/images/studio-chap2-form.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/images/studio-chap2-gant.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/images/studio-chap2-graph.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/images/studio-chap2-kanban.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/images/studio-chap2-list.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/images/studio-chap2-map.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/images/studio-chap2-pivot.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/images/studio-chap2-search.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.