售 价:¥
温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印
为你推荐
Odoo 10 Development Essentials
Odoo 10 Development Essentials
Credits
Foreword
About the Author
About the Reviewer
www.PacktPub.com
Why subscribe?
Preface
What this book covers
What you need for this book
Who this book is for
Conventions
Reader feedback
Customer support
Downloading the example code
Downloading the color images of this book
Errata
Piracy
Questions
1. Getting Started with Odoo Development
Setting up a host for the Odoo server
Provision for a Debian host
Creating a user account for Odoo
Installing Odoo from the source
Initializing a new Odoo database
Managing your databases
A word about Odoo product versions
More server configuration options
Odoo server configuration files
Changing the listening port
The database filter option
Managing server log messages
Developing from your workstation
Using a Linux text editor
Installing and configuring Samba
Activating the developer tools
Installing third-party modules
Finding community modules
Configuring the addons path
Updating the apps list
Summary
2. Building Your First Odoo Application
Essential concepts
Understanding applications and modules
Modifying and extending modules
Creating the module basic skeleton
A word about licenses
Adding to the addons path
Installing the new module
Upgrading a module
The server development mode
The model layer
Creating the data model
Adding automated tests
The view layer
Adding menu items
Creating the form view
Business document form views
Adding action buttons
Using groups to organize forms
The complete form view
Adding list and search views
The business logic layer
Adding business logic
Adding tests
Setting up access security
Testing access security
Adding access control security
Row-level access rules
Better describing the module
Summary
3. Inheritance – Extending Existing Applications
Adding sharing capabilities to the To-Do app
Extending models
Adding fields to a model
Modifying existing fields
Modifying model methods
Extending views
Extending the form view
Extending the tree and search views
More model inheritance mechanisms
Copying features with prototype inheritance
Embedding models using delegation inheritance
Adding the social network features
Modifying data
Modifying menu and action records
Modifying security record rules
Summary
4. Module Data
Understanding external identifiers
Finding external identifiers
Exporting and importing data
Exporting data
Importing data
Related records in CSV data files
Module data
Demonstration data
XML data files
The data noupdate attribute
Defining records in XML
Setting field values
Setting values using expressions
Setting values for relation fields
Shortcuts for frequently used models
Other actions in XML data files
Deleting records
Triggering functions and workflows
Summary
5. Models – Structuring the Application Data
Organizing application features into modules
Introducing the todo_ui module
Creating models
Model attributes
Models and Python classes
Transient and Abstract models
Inspecting existing models
Creating fields
Basic field types
Common field attributes
Special field names
Relationships between models
Many-to-one relationships
Many-to-many relationships
One-to-many inverse relationships
Hierarchic relationships
Reference fields using dynamic relationships
Computed fields
Searching and writing on computed fields
Storing computed fields
Related fields
Model Constraints
Summary
6. Views - Designing the User Interface
Defining the user interface with XML files
Menu items
Window actions
Context and domain
Context data
Domain expressions
The form views
Dealing with several views of the same type
Business document views
The header
The sheet
Title and subtitle
Smart buttons area
Grouping content in a form
Tabbed notebooks
View semantic components
Fields
Labels for fields
Relational fields
Field widgets
Buttons
Smart buttons
Dynamic views
On change events
Dynamic attributes
List views
Search views
Calendar views
Graph and pivot views
Other view types
Summary
7. ORM Application Logic – Supporting Business Processes
Creating a wizard
The wizard model
The wizard form
The wizard business logic
Logging
Raising exceptions
Helper actions in wizards
Working with the ORM API
Method decorators
Overriding the ORM default methods
Methods for RPC and web client calls
The shell command
The server environment
Modifying the execution environment
Transactions and low-level SQL
Working with recordsets
Querying models
Singletons
Writing on records
Working with time and dates
Operations on recordsets
Manipulating recordsets
Using relational fields
Working with relational fields
Summary
8. Writing Tests and Debugging Your Code
Unit tests
Adding unit tests
Writing test cases
Setting up tests
Testing exceptions
Running tests
About YAML tests
Development tools
Server development options
Debugging
The Python debugger
A sample debugging session
Alternative Python debuggers
Printing messages and logging
Inspecting running processes
Summary
9. QWeb and Kanban Views
About kanban boards
Kanban views
Designing kanban views
Priority, kanban state, and color
Kanban card elements
The kanban card layout
Adding a kanban card option menu
Actions in kanban views
The QWeb templating language
The QWeb JavaScript evaluation context
Using t-attf for attributes string substitution
Using t-att for dynamic attributes
Using t-foreach for loops
Using t-if for conditional rendering
Using t-esc and t-raw to render values
Using t-set to set values on variables
Using t-call to insert other templates
More ways to use t-attf
Inheritance on kanban views
Custom CSS and JavaScript assets
Summary
10. Creating QWeb Reports
Installing wkhtmltopdf
Creating business reports
QWeb report templates
Presenting data in reports
Rendering images
Summary totals and running totals
Defining paper formats
Enabling language translation in reports
Reports based on custom SQL
Summary
11. Creating Website Frontend Features
Roadmap
Our first web page
Hello World!
Hello World! with a Qweb template
Extending web features
HelloCMS!
Building websites
Adding CSS and JavaScript assets
The to-do list controller
The to-do list template
The To-do Task detail page
Website forms
The form page
Access security and menu item
Adding custom logic
Summary
12. External API – Integrating with Other Systems
Setting up a Python client
Calling the Odoo API using XML-RPC
Opening an XML-RPC connection
Reading data from the server
Calling other methods
Writing a Notes desktop application
Communication layer with Odoo
Creating the GUI
Introducing the ERPpeek client
The ERPpeek API
The ERPpeek CLI
Summary
13. Deployment Checklist – Going Live
Available prebuilt packages
Installing dependencies
Preparing a dedicated system user
Installing from the source code
Setting up the configuration file
Multiprocessing workers
Setting up as a system service
Creating a systemd service
Creating an Upstart/sysvinit service
Checking the Odoo service from the command line
Using a reverse proxy
Setting up Nginx for reverse proxy
Enforcing HTTPS
Nginx optimizations
Long polling
Server and module updates
Summary
买过这本书的人还买过
读了这本书的人还在读
同类图书排行榜