دسترسی نامحدود
برای کاربرانی که ثبت نام کرده اند
برای ارتباط با ما می توانید از طریق شماره موبایل زیر از طریق تماس و پیامک با ما در ارتباط باشید
در صورت عدم پاسخ گویی از طریق پیامک با پشتیبان در ارتباط باشید
برای کاربرانی که ثبت نام کرده اند
درصورت عدم همخوانی توضیحات با کتاب
از ساعت 7 صبح تا 10 شب
ویرایش: 3 ed. نویسندگان: Parth Gajjar, Holger Brunn, Alexandre Fayolle, Daniel Reis سری: ISBN (شابک) : 9781789618921, 1789618924 ناشر: Packt Publishing سال نشر: 2019 تعداد صفحات: 761 زبان: English فرمت فایل : PDF (درصورت درخواست کاربر به PDF، EPUB یا AZW3 تبدیل می شود) حجم فایل: 14 مگابایت
در صورت تبدیل فایل کتاب Odoo 12 development cookbook : over 190+ unique recipes to build effective enterprise and business applications به فرمت های PDF، EPUB، AZW3، MOBI و یا DJVU می توانید به پشتیبان اطلاع دهید تا فایل مورد نظر را تبدیل نمایند.
توجه داشته باشید کتاب کتاب آشپزی توسعه Odoo 12: بیش از 190 دستور العمل منحصر به فرد برای ایجاد برنامه های کارآمد سازمانی و تجاری نسخه زبان اصلی می باشد و کتاب ترجمه شده به فارسی نمی باشد. وبسایت اینترنشنال لایبرری ارائه دهنده کتاب های زبان اصلی می باشد و هیچ گونه کتاب ترجمه شده یا نوشته شده به فارسی را ارائه نمی دهد.
با استفاده از جدیدترین ویژگیهای Odoo 12 و Python، راهحلهای سفارشیسازی شده برای کسبوکار خود بسازید. با Odoo 12 به سرعت برای ایجاد ماژولهای سفارشی و قابل استفاده مجدد، با پیادهسازی APIهای وب، برنامه خود را با سیستمهای دیگر متصل کنید. sh برای ایجاد شرکت های قوی شرح کتاب Odoo یک چارچوب قدرتمند است که به دلیل توسعه سریع برنامه شناخته شده است. آخرین نسخه آن، Odoo 12، تعداد زیادی ویژگی جدید را معرفی می کند. با این کتاب، یاد خواهید گرفت که چگونه برنامه های قدرتمند Odoo را از ابتدا با استفاده از آخرین ویژگی ها توسعه دهید. این کتاب آشپزی Odoo با پوشش دادن نصب و استقرار Odoo بر روی سرور شروع می شود. در مرحله بعد، چارچوب Odoo را با مثال های دنیای واقعی بررسی خواهید کرد. شما یک ماژول جدید Odoo را از ابتدا ایجاد خواهید کرد و به مفاهیم چارچوب پیشرفته پیشرفت خواهید کرد. شما همچنین یاد خواهید گرفت که چگونه برنامه های موجود، از جمله Point of Sale (POS) را تغییر دهید. این کتاب فقط به توسعه باطن محدود نمی شود. دستور العمل های پیشرفته جاوا اسکریپت برای ایجاد نماها و ویجت های جدید به شما کمک می کند عناصر رابط کاربری زیبا بسازید. همانطور که به جلو حرکت می کنید، بینش هایی در مورد توسعه وب سایت به دست خواهید آورد و با مطالعه بهینه سازی عملکرد، اشکال زدایی و تست های خودکار به یک توسعه دهنده Odoo با کیفیت تبدیل خواهید شد. در نهایت، جدیدترین مفاهیمی مانند چند وب سایت، خرید درون برنامه ای (IAP)، Odoo.sh و جعبه اینترنت اشیا را خواهید آموخت. در پایان کتاب، شما تمام دانش لازم برای ساخت اپلیکیشن های قدرتمند Odoo را خواهید داشت. بهترین شیوه های توسعه استفاده شده در این کتاب بدون شک زمانی که با چارچوب Odoo کار می کنید مفید خواهد بود. آنچه یاد خواهید گرفت توسعه یک ماژول در چارچوب Odoo و اصلاح جریان موجود هر برنامه کاربردی ساخت وب سایت های پویا با Odoo CMS ایجاد و اصلاح اجزای جاوا اسکریپت پشتیبان در Odoo و POS اتصال و دسترسی به هر شی در Odoo از طریق تماس های رویه از راه دور (RPC) Illustrate ابزارهای مختلف موجود در Odoo برای پیادهسازی فرآیندهای تجاری برای سوابق شما پیادهسازی خدمات خرید درونبرنامه مدیریت، استقرار و آزمایش یک نمونه Odoo با PaaS Odoo.sh پیکربندی IoT Box برای افزودن و ارتقای سختافزار نقطه فروش (POS) Who this این کتاب برای این است که اگر یک توسعهدهنده پایتون هستید و میخواهید برنامههای تجاری بسیار کارآمد را با آخرین چارچوب Odoo توسعه دهید، یا اگر فقط یک راهنمای راهحل برای همه مسائل توسعه Odoo خود میخواهید، این کتاب برای شما مناسب است. برخی از تجربه برنامه نویسی جاوا اسکریپت و توسعه وب برای استفاده حداکثری از این کتاب ضروری است.
Build customized solutions for your business using the latest features of Odoo 12 and Python Key Features Get up to speed with Odoo 12 to create custom and reusable modules Interconnect your application with other systems by implementing web APIs Understand the mechanisms powering the Odoo framework and Odoo.sh to build robust enterprises Book Description Odoo is a powerful framework known for rapid application development. Its latest release, Odoo 12, introduces tons of new features. With this book, you'll learn how to develop powerful Odoo applications from scratch, using all the latest features. This Odoo cookbook starts by covering Odoo installation and deployment on the server. Next, you'll explore the Odoo framework with real-world examples. You'll create a new Odoo module from the ground up and progress to advanced framework concepts. You'll also learn how to modify existing applications, including Point of Sale (POS). This book is not just limited to backend development; the advanced JavaScript recipes for creating new views and widgets will help you build beautiful UI elements. As you move forward, you'll gain insights into website development and become a quality Odoo developer by studying performance optimization, debugging, and automated tests. Finally, you'll learn the latest concepts like multi-website, In-App Purchasing (IAP), Odoo.sh, and IoT Box. By the end of the book, you'll have all the knowledge you need to build powerful Odoo applications. The development best practices used in this book will undoubtedly come handy when you are working with the Odoo framework. What you will learn Develop a module in the Odoo framework and modify the existing flow of any application Build dynamic websites with Odoo CMS Create and modify backend JavaScript components in Odoo and POS Connect and access any object in Odoo via Remote Procedure Calls (RPC) Illustrate the different tools available in Odoo to implement business processes for your records Implement in-app purchase services Manage, deploy, and test an Odoo instance with the PaaS Odoo.sh Configure IoT Box to add and upgrade Point of Sale (POS) hardware Who this book is for If you're a Python developer who wants to develop highly efficient business applications with the latest Odoo framework, or if you just want a solution guide for all your Odoo development issues, this book is for you. Some JavaScript programming and web development experience is necessary to get the most out of this book.
Cover Title Page Copyright and Credits About Packt Contributors Table of Contents Preface Chapter 1: Installing the Odoo Development Environment Introduction Odoo ecosystem Odoo editions Git repositories Runbot Odoo app store Odoo community association Official Odoo help forum Easy installation of Odoo from a source Getting ready How to do it... How it works... Virtual environments PostgreSQL configuration Git configuration Downloading the Odoo source code Starting the instance Managing Odoo environments using the start command Getting ready How to do it... How it works... There's more… Managing Odoo server databases Getting ready How to do it... Accessing the database management interface Setting or changing the master password Creating a new database Duplicating a database Removing a database Backing up a database Restoring a database backup How it works... There's more... Storing the instance configuration in a file How to do it... How it works... Activating the Odoo developer tools How to do it... How it works... Updating Odoo from source Getting ready How to do it... How it works... Chapter 2: Managing Odoo Server Instances Introduction Configuring the add-ons path Getting ready How to do it… How it works… There's more… Updating the add-on modules list Getting ready How to do it… How it works… Standardizing your instance directory layout How to do it… How it works… See also There's more... Installing and upgrading local add-on modules Getting ready How to do it… From the web interface From the command line How it works… Add-on installation Add-on update There's more… Installing add-on modules from GitHub Getting ready How to do it… How it works… There's more… Applying changes to add-ons Getting ready How to do it… How it works… See also Applying and trying proposed pull requests Getting ready How to do it… How it works… There's more… Chapter 3: Server Deployment Introduction Installing Odoo for production use Getting ready How to do it... How it works... There's more... Server dimensioning PostgreSQL tuning Source code version Backups Adapting the configuration file for production Getting ready How to do it... How it works... There's more... Setting up Odoo as a system service Getting ready How to do it... How it works... Configuring a reverse proxy and SSL with nginx and Let's Encrypt Getting ready How to do it... How it works... There's more... See also Using Docker to run Odoo Getting ready How to do it… How it works… Running the Odoo image with a configuration file Running the Odoo image with custom add-ons Running multiple Odoo instances There is more... Running Odoo through docker-compose Getting ready How to do it... How it works... There's more... Managing content delivery networks for websites Getting ready How to do it... Configuring the CDN provider Configuring CDN at Odoo How it works... There's more... Chapter 4: Creating Odoo Add-On Modules Technical requirements Introduction What is an Odoo add-on module? Creating and installing a new add-on module Getting ready How to do it... How it works... Completing the add-on module manifest Getting ready How to do it... How it works... There's more… Organizing the add-on module file structure Getting ready How to do it... How it works... Adding models Getting ready How to do it... How it works... Adding menu items and views Getting ready How to do it... Accessing Odoo as a superuser How it works... Adding access security Getting ready How to do it... How it works… See also Using the scaffold command to create a module Getting ready How to do it... How it works... Chapter 5: Application Models Introduction Technical requirements Defining the model representation and order Getting ready How to do it... How it works... There's more... Adding data fields to a model Getting ready How to do it... How it works... There's more... Using a float field with configurable precision Getting ready How to do it... How it works... Adding a monetary field to a model Getting ready How to do it... How it works... Adding relational fields to a model Getting ready How to do it... How it works... There's more... Adding a hierarchy to a model Getting ready How to do it... How it works... There's more... Adding constraint validations to a model Getting ready How to do it... How it works... There's more... Adding computed fields to a model Getting ready How to do it... How it works... Exposing related fields stored in other models Getting ready How to do it... How it works... There's more... Adding dynamic relations using reference fields Getting ready How to do it... How it works... Adding features to a model using inheritance Getting ready How to do it... How it works... There's more... Using abstract models for reusable model features Getting ready How to do it... How it works... There's more... Using delegation inheritance to copy features to another model Getting ready How to do it... How it works... There's more... Chapter 6: Basic Server-Side Development Introduction Technical requirements Defining model methods and using the API decorators Getting ready How to do it... How it works... There's more... Reporting errors to the user Getting ready How to do it... How it works... There's more... Obtaining an empty recordset for a different model Getting ready How to do it... How it works... See also Creating new records Getting ready How to do it... How it works... There's more… Updating values of recordset records Getting ready How to do it... How it works... There's more... Searching for records Getting ready How to do it... How it works... There's more... Combining recordsets Getting ready How to do it... How it works... Filtering recordsets Getting ready How to do it... How it works... There's more... Traversing recordset relations Getting ready How to do it... How it works... There's more... See also Sorting recordsets Getting ready How to do it... How it works... There's more... Extending the business logic defined in a model Getting ready How to do it... How it works... There's more... Extending write() and create() Getting ready How to do it... How it works... There's more... Customizing how records are searched Getting ready How to do it... How it works... There's more... See also Fetching data in groups with read_group() Getting ready How to do it... How it works... Chapter 7: Module Data Introduction Technical requirements Using external IDs and namespaces How to do it... How it works... There's more... See also Loading data using XML files How to do it... How it works... There's more... Using the noupdate and forcecreate flags How to do it... How it works... There's more... See also Loading data using CSV files How to do it... How it works... There's more... Add-on updates and data migration How to do it... How it works... There's more... See also Deleting records from XML files Getting ready How to do it... How it works... Invoking functions from XML files How to do it... How it works... There's more... Chapter 8: Debugging Introduction The auto-reload and --dev options Getting ready How to do it... How it works... Producing server logs to help debug methods Getting ready How to do it... How it works... There's more... Using the Odoo shell to interactively call methods Getting ready How to do it... How it works... There's more... Using the Python debugger to trace method execution Getting ready How to do it... How it works... There's more... See also Using the Odoo Community Association maintainer quality tools Getting ready How to do it... How it works... There's more... Using Pylint to check your code Using Flake8 to check your code Understanding the debug mode options How to do it... How it works... Chapter 9: Advanced Server-Side Development Techniques Introduction Technical requirements Changing the user that performs an action Getting ready How to do it... How it works... There's more... See also Calling a method with a modified context Getting ready How to do it... How it works... There's more... See also Executing raw SQL queries Getting ready How to do it... How it works... There's more... See also Writing a wizard to guide the user Getting ready How to do it... How it works... There's more... Using the context to compute default values Wizards and code reuse Redirecting the user Defining onchange methods Getting ready How to do it... How it works... There's more... Calling onchange methods on the server side Getting ready How to do it... How it works... There's more... See also Defining a model based on an SQL view Getting ready How to do it... How it works... There's more... Adding custom settings options Getting ready How to do it... How it works... There's more... Implementing init hooks Getting ready How to do it... How it works... Chapter 10: Backend Views Introduction Technical requirements Adding a menu item and window action How to do it... How it works... There's more... See also Having an action open a specific view How to do it... How it works... ir.actions.act_window.view There's more... Adding content and widgets to a form view How to do it... How it works... Form Header Button Group Field Notebook and page General attributes Other tags There's more... See also Adding buttons to forms How to do it... How it works... There's more... Passing parameters to forms and actions – Context Getting ready How to do it... How it works... There's more... See also Defining filters on record lists – Domain How to do it... How it works... There's more... Operators Pitfalls of searching using domains See also Defining list views How to do it... How it works... There's more... Defining search views How to do it... How it works... There's more... See also Changing existing views – view inheritance How to do it... How it works... There's more... Order of evaluation in view inheritance See also Defining document-style forms How to do it... How it works... Dynamic form elements using attrs How to do it... How it works... There's more... Defining embedded views How to do it... How it works... There's more... Displaying attachments on the side of the form view How to do it... How it works... There's more... Defining kanban views How to do it... How it works... There's more... Showing kanban cards in columns according to their state Getting ready How to do it... How it works... There's more... Defining calendar and gantt views How to do it... How it works... There's more... Gantt View Defining graph and pivot views Getting ready How to do it... How it works... There's more... Defining the cohort view Getting ready How to do it... How it works... Defining the dashboard view Getting ready How to do it... How it works... There's more.... Chapter 11: Access Security Technical requirements Creating security groups and assigning them to users Getting ready How to do it... How it works... There's more... Adding security access to models Getting ready How to do it... How it works... There's more... Limiting access to fields in models How to do it... How it works... There's more... Limiting record access using record rules How to do it... How it works... There's more... Using security groups to activate features Getting ready How to do it... How it works... There's more... Accessing recordsets as a superuser How to do it... How it works... There's more... Hiding view elements and menus based on groups Getting ready How to do it... How it works... Chapter 12:Internationalization Installing a language and configuring user preferences Getting ready How to do it... How it works... There's more... Configuring language-related settings Getting ready How to do it... How it works... There's more... Translating texts through the web client user interface Getting ready How to do it... How it works... There's more... Exporting translation strings to a file Getting ready How to do it... How it works... There's more... Using gettext tools to make translations easier How to do it... How it works... There's more... Importing translation files into Odoo Getting ready How to do it... How it works... Chapter 13: Automation, Workflows, and Printouts Introduction Technical requirements Managing dynamic record stages Getting ready How to do it... How it works... There's more... Managing kanban stages Getting started How to do it... How it works... There's more... Adding a quick create form in a kanban card Getting started How to do it... How it works... Creating interactive kanban cards Getting started How to do it... How it works... Adding a progress bar in kanban views Getting started How to do it... How it works... Creating server actions Getting ready How to do it... How it works... There's more... Using Python code server actions Getting ready How to do it... How it works... There's more... Using automated actions on time conditions Getting ready How to do it... How it works... There's more... Using automated actions on event conditions Getting ready How to do it... How it works... There's more... Creating QWeb-based PDF reports Getting ready How to do it... How it works... There's more... Chapter 14: Web Server Development Introduction Technical requirements Making a path accessible from the network Getting ready How to do it... How it works... odoo.http.route Return values odoo.http.request There's more... See also Restricting access to web accessible paths Getting ready How to do it... How it works... There's more... Consuming parameters passed to your handlers How to do it... How it works... There's more... See also Modifying an existing handler Getting ready How to do it... How it works… There's more... See also Chapter 15: CMS Website Development Introduction Managing static assets What are asset bundles and different assets in Odoo? Custom assets How to do it... How it works... There's more... Extending CSS and JavaScript for the website Getting ready How to do it... How it works... Creating or modifying templates – QWeb Getting ready How to do it... How it works... Loops Dynamic attributes Fields Conditionals Setting variables Subtemplates Inline editing There's more... See also Managing dynamic routes Getting ready How to do it... How it works... There's more... Offering snippets to the user Getting ready How to do it... How it works... There's more... Getting input from users Getting ready How to do it... How it works... There's more... Managing Search Engine Optimization (SEO) options Getting ready How to do it... How it works... There's more... Managing sitemaps for the website Getting ready... How to do it... How it works... Getting a visitor's country information Getting ready... How to do it... How it works... Tracking a marketing campaign Getting ready How to do it... How it works... Managing multiple websites Getting ready How to do it... How it works... Chapter 16: Web Client Development Introduction Technical requirements Creating custom widgets Getting ready How to do it... How it works... There's more... Using client-side QWeb templates Getting ready How to do it... How it works... There's more... See also Making RPC calls to the server Getting ready How to do it... How it works... There's more... See also Creating a new view Getting ready How to do it... How it works... There's more... Debugging your client-side code Getting ready How to do it... How it works... There's more... Improving onboarding with tour Getting ready How to do it... How it works... Mobile app JavaScript Getting ready How to do it... How to works... There's more... Chapter 17: In-App Purchasing with Odoo Introduction Technical requirements In-app purchase concepts How it works... The IAP service flow There's more... Registering an IAP service in Odoo Getting ready How to do it... How it works... Creating an IAP service module Getting ready How to do it... How it works... Authorizing and charging IAP credits Getting ready How to do it... How it works... There's more... See also Creating an IAP client module Getting ready How to do it... How it works... There's more... Displaying offers when an account lacks credits Getting ready How to do it... How it works... There's more... Chapter 18: Automated Test Cases Introduction Technical requirements Python test cases Getting ready How to do it... How it works... There's more... Running tagged Python test cases Getting ready How to do it... How it works... There's more... Setting up Headless Chrome for client-side test cases How to do it... How it works... Client-side QUnit test cases Getting ready How to do it... How it works... There's more... Adding tour test cases Getting ready How to do it... How it works... Running client-side test cases from the UI How to do it... Running QUnit test cases Running tours from the UI How it works... Debugging client-side test cases Getting ready How to do it... How it works... Generating videos/screenshots for failed test cases How to do it... How it works... Chapter 19: Managing, Deploying, and Testing with Odoo.sh Introduction Technical requirements Exploring some basic concepts of Odoo.sh What is Odoo.sh? Why was Odoo.sh introduced? When should you use Odoo.sh? What are the features of Odoo.sh? Creating an Odoo.sh account Getting ready How to do it... How it works... There's more... Adding and installing custom modules Getting ready How to do it... How it works... There's more... Managing branches Getting ready How to do it... Creating the production branch Creating a development branch Creating a staging branch Merging new features in the production branch How it works... Accessing debugging options How to do it... Branch history Mail catcher Web shell Code editor Logs There's more... Getting a backup of your instance How to do it... How it works... Checking the status of your builds How to do it... How it works... There's more... All Odoo.sh options Getting ready How to do it... Project name Collaborators Public access Module installation Submodules Database workers Staging branches There's more... Database size Odoo source code revisions Chapter 20: Remote Procedure Calls in Odoo Technical requirements Logging in/connecting Odoo with XML-RPC Getting ready How to do it... How it works... There's more... Searching/reading records through XML-RPC Getting ready How to do it... How it works... There's more... Creating/updating/deleting records through XML-RPC Getting ready How to do it... How it works... There's more... Calling methods through XML-RPC Getting ready How to do it... How it works... There's more... Logging in/connecting Odoo with JSON-RPC Getting ready How to do it... How it works... There's more... Fetching/searching records through JSON-RPC Getting ready How to do it... How it works... There's more... Create/update/delete records through JSON-RPC Getting ready How to do it... How it works... There's more... Calling methods through JSON-RPC Getting ready How to do it... How it works... The OCA odoorpc library Getting ready How to do it... How it works... There's more... See also Chapter 21: Performance Optimization The prefetching pattern for the recordsets How to do it... How it works... There's more... The in-memory cache – ormcache How to do it... ormcache ormcache_context ormcache_multi How it works... There's more... Generating image thumbnails How to do it... How it works... There's more... Accessing grouped data How to do it... How it works... There's more... Creating or writing multiple records How to do it... How it works... There's more... Accessing records through database queries How to do it... How it works... There's more... Profiling Python code How to do it... How it works... There's more... Chapter 22: Point of Sale Introduction Technical requirements Adding custom JavaScript/SCSS files Getting ready How to do it... How it works... There's more... Adding an action button on the keyboard Getting ready How to do it... How it works... There's more... Making RPC calls Getting ready How to do it... How it works... Modifying the POS screen UI Getting ready How to do it... How it works... Modifying existing business logic Getting ready How to do it... How it works... Modifying customer receipts Getting ready How to do it... How it works... There's more... Chapter 23: Manage Emails in Odoo Technical requirements Configuring incoming and outgoing mail servers Getting ready How to do it... Configuring the incoming mail server Configuring the outgoing mail server How it works... There's more... Managing chatter on documents Getting ready How to do it... How it works... There is more... Managing activities on documents Getting ready How to do it... How it works... There's more... Sending mail using the Jinja template Getting ready How to do it... How it works... There's more... Sending mail using the QWeb template Getting ready How to do it... How it works... There's more... Managing the mail alias Getting ready How to do it... How it works... There's more... Logging user changes in chatter Getting ready How to do it... How it works... Chapter 24: IoT Box Technical requirements Flashing the IoT Box image for Raspberry Pi Getting ready How to do it... How it works... There's more... Connecting the IoT Box with the network Getting ready How to do it... How it works... Adding the IoT Box to Odoo Getting ready How to do it... Connecting the IoT Box automatically Connecting the IoT Box manually How it works... There's more... Loading drivers and listing connected devices Getting ready How to do it... How it works... Taking input from devices Getting ready How to do it... How it works... There is more... Accessing the IoT Box through SSH Getting ready How it works... How to do it... There's more... Configuring a point of sale Getting ready How to do it... How it works... There's more... Other Book You May Enjoy Index