diff --git a/apps/_documentation/static/en/.buildinfo b/apps/_documentation/static/en/.buildinfo index 2dc9ba75..3c38c71f 100644 --- a/apps/_documentation/static/en/.buildinfo +++ b/apps/_documentation/static/en/.buildinfo @@ -1,4 +1,4 @@ # Sphinx build info version 1 # This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done. -config: 44b3435943ab4835c7a6a204b6a121fa +config: d62c19ebef7c157f7809c434c3c4b977 tags: 645f666f9bcd5a90fca523b33c5a78b7 diff --git a/apps/_documentation/static/en/_images/first_run.png b/apps/_documentation/static/en/_images/first_run.png index 59320040..a670f015 100644 Binary files a/apps/_documentation/static/en/_images/first_run.png and b/apps/_documentation/static/en/_images/first_run.png differ diff --git a/apps/_documentation/static/en/_static/documentation_options.js b/apps/_documentation/static/en/_static/documentation_options.js index 11dad5b5..7a5af9b6 100644 --- a/apps/_documentation/static/en/_static/documentation_options.js +++ b/apps/_documentation/static/en/_static/documentation_options.js @@ -1,5 +1,5 @@ const DOCUMENTATION_OPTIONS = { - VERSION: '1.20240530.2', + VERSION: '20240630', LANGUAGE: 'en', COLLAPSE_INDEX: false, BUILDER: 'html', diff --git a/apps/_documentation/static/en/chapter-01.html b/apps/_documentation/static/en/chapter-01.html index 361f3aa4..ece7d8b2 100644 --- a/apps/_documentation/static/en/chapter-01.html +++ b/apps/_documentation/static/en/chapter-01.html @@ -4,7 +4,7 @@ - What is py4web? — py4web 1.20240530.2 documentation + What is py4web? — py4web 20240630 documentation @@ -18,7 +18,7 @@ - + @@ -42,7 +42,7 @@
- 1.20240530.2 + 20240630
@@ -258,7 +258,7 @@

Acknowledgments - v: 1.20240530.2 + v: 20240630
diff --git a/apps/_documentation/static/en/chapter-02.html b/apps/_documentation/static/en/chapter-02.html index 8bd56302..8679751d 100644 --- a/apps/_documentation/static/en/chapter-02.html +++ b/apps/_documentation/static/en/chapter-02.html @@ -4,7 +4,7 @@ - Help, resources and hints — py4web 1.20240530.2 documentation + Help, resources and hints — py4web 20240630 documentation @@ -18,7 +18,7 @@ - + @@ -42,7 +42,7 @@
- 1.20240530.2 + 20240630
@@ -273,7 +273,7 @@

How to contribute - v: 1.20240530.2 + v: 20240630
diff --git a/apps/_documentation/static/en/chapter-03.html b/apps/_documentation/static/en/chapter-03.html index 89c09c79..440c3f1e 100644 --- a/apps/_documentation/static/en/chapter-03.html +++ b/apps/_documentation/static/en/chapter-03.html @@ -4,7 +4,7 @@ - Installation and Startup — py4web 1.20240530.2 documentation + Installation and Startup — py4web 20240630 documentation @@ -18,7 +18,7 @@ - + @@ -43,7 +43,7 @@
- 1.20240530.2 + 20240630
@@ -313,7 +313,7 @@

Upgrading
py4web setup apps
+
py4web setup <path to apps_folder>
 

in order to re-install them. This is a safety precaution, in case you @@ -344,7 +344,7 @@

First run
http://localhost:8000
 http://localhost:8000/_dashboard
 http://localhost:8000/{yourappname}/index
@@ -423,7 +423,7 @@ 

Command line optionsCommand line options

The app_names option lets you filter which specific apps you want to serve (comma separated). If absent or empty all the apps in the APPS_FOLDER will be run.

+

By default (for security reasons) the py4web framework will listen only on 127.0.0.1, i.e. localhost. +If you need to reach it from other machines you must specify the host option, +like py4web run --host 0.0.0.0 apps.

The url_prefix option is useful for routing at the py4web level. It allows mapping to multiple versions of py4web running on different ports as long as the url_prefix and port match the location. For example py4web run --url_prefix=/abracadabra --port 8000 apps.

@@ -730,7 +733,7 @@

Deployment on Ubuntu - v: 1.20240530.2 + v: 20240630
diff --git a/apps/_documentation/static/en/chapter-04.html b/apps/_documentation/static/en/chapter-04.html index f15f6be9..55c73de1 100644 --- a/apps/_documentation/static/en/chapter-04.html +++ b/apps/_documentation/static/en/chapter-04.html @@ -4,7 +4,7 @@ - The Dashboard — py4web 1.20240530.2 documentation + The Dashboard — py4web 20240630 documentation @@ -18,7 +18,7 @@ - + @@ -42,7 +42,7 @@
- 1.20240530.2 + 20240630
@@ -200,7 +200,7 @@

Login into the Dashboard - v: 1.20240530.2 + v: 20240630
diff --git a/apps/_documentation/static/en/chapter-05.html b/apps/_documentation/static/en/chapter-05.html index f08a49d1..ebef44eb 100644 --- a/apps/_documentation/static/en/chapter-05.html +++ b/apps/_documentation/static/en/chapter-05.html @@ -4,7 +4,7 @@ - Creating an app — py4web 1.20240530.2 documentation + Creating an app — py4web 20240630 documentation @@ -18,7 +18,7 @@ - + @@ -42,7 +42,7 @@
- 1.20240530.2 + 20240630
@@ -502,7 +502,7 @@

Watch for files change - v: 1.20240530.2 + v: 20240630
diff --git a/apps/_documentation/static/en/chapter-06.html b/apps/_documentation/static/en/chapter-06.html index be87ec93..f6b91327 100644 --- a/apps/_documentation/static/en/chapter-06.html +++ b/apps/_documentation/static/en/chapter-06.html @@ -4,7 +4,7 @@ - Fixtures — py4web 1.20240530.2 documentation + Fixtures — py4web 20240630 documentation @@ -18,7 +18,7 @@ - + @@ -42,7 +42,7 @@
- 1.20240530.2 + 20240630
@@ -140,7 +140,8 @@

Fixtures

PY4WEB fixtures provide a mechanism to specify what an action needs so that py4web can accomplish the required tasks (and skip non required ones) in the most efficient manner. Fixtures make the code efficient and -reduce the need for boilerplate code.

+reduce the need for boilerplate code. Think of fixtures as per action +(as opposed to per app) middleware.

PY4WEB fixtures are similar to WSGI middleware and BottlePy plugin except that they apply to individual actions, not to all of them, and can depend on each other.

@@ -238,7 +239,8 @@

The Template fixtureThe Inject fixture

The Inject fixture is used for passing variables (and even python functions) to templates. Here is a simple example:

-
my_var = "Example variable to be passed to a Template"
+
from py4web.utils.factories import Inject
+my_var = "Example variable to be passed to a Template"
 
 ...
 
@@ -288,6 +290,22 @@ 

The Translator fixturereturn str(T("You have been here {n} times").format(n=counter))

+

If the T fixture is to be used from inside a template you may want to pass it to the template:

+
@action('index')
+@action.uses("index.html", session, T)
+def index():
+    return dict(T=T)
+
+
+

Or perahps inject (same effect as above)

+
from py4web.utils.factories import Inject
+
+@action('index')
+@action.uses("index.html", session, Inject(T=T)
+def index():
+    return dict()
+
+

Now create the following translation file translations/en.json:

{"You have been here {n} times":
   {
@@ -326,6 +344,23 @@ 

The Translator fixture

Set your browser preference to Italian: now the messages will be automatically translated to Italian.

+

Notice there is UI for creating, updating, and updating translation files. +The UI is accessing via a button from the Dashboard.

+

If you want to force an action to use language defined somewhere else, for example from a session variable, you can do:

+
@action('index')
+@action.uses("index.html", session, T)
+def index():
+    T.select(session.get("lang", "it"))
+    return dict(T=T)
+
+
+

If you want all of your action to use the same pre-defined language and ignore browser preferences, +you have to redefine the select method for the T instance:

+
T.on_request = lambda *_: T.local.__dict__.update(tag="it", language=T.languages["it"])
+
+
+

This is to be done outside any action and will apply to all actions. Action will still need todeclare +action.uses(T) else the behavior is undefined.

The Flash fixture

@@ -455,11 +490,14 @@

The Session fixture

By default the session object is stored inside a cookie called appname_session. It’s a JWT, hence encoded in a URL-friendly string -format and signed using the provided secret for preventing tampering. -Notice that it’s not encrypted (in fact it’s quite trivial to read its -content from http communications or from disk), so do not place any -sensitive information inside, and use a complex secret. -If the secret changes existing sessions are invalidated. +format and signed using the provided secret for preventing tampering.

+
+

Warning

+

Data embedded in cookies is signed, not encrypted! In fact it’s quite +trivial to read its content from http communications or from disk, so +do not place any sensitive information inside, and use a complex secret.

+
+

If the secret changes existing sessions are invalidated. If the user switches from HTTP to HTTPS or vice versa, the user session is also invalidated. Session in cookies have a small size limit (4 kbytes after being serialized and encoded) so do @@ -568,7 +606,7 @@

Sharing sessions

The Condition fixture

-

Some times you want to restrict access to an action based on a +

Sometimes you want to restrict access to an action based on a given condition. For example to enforce a workflow:

@action("step1")
 @action.uses(session)
@@ -606,9 +644,10 @@ 

The Condition fixture
Condition(cond, on_false=lambda: redirect(URL('step1')))
 

-

You can use condition to check permissions. For example, assuming you are using -Tags as explained in chapter 13 and you are giving group memberships to users, -then you can require that users action have specific group membership:

+

You can use condition to check permissions. For example, if you +are giving group memberships to users using Tags (it will be explained +later on the Authorization using Tags chapter), then you can +require that users action have specific group membership:

groups = Tags(db.auth_user)
 
 def requires_membership(group_name):
@@ -708,7 +747,7 @@ 

The Auth fixtureauth_user table is defined before calling auth.enable() -the provided table withh be used.

+the provided table will be used.

It is also possible to add extra_fields to the auth_user table, for example:

extra_fields = [
@@ -1006,7 +1045,7 @@ 

Convenience Decorators - v: 1.20240530.2 + v: 20240630
diff --git a/apps/_documentation/static/en/chapter-07.html b/apps/_documentation/static/en/chapter-07.html index e1298d59..ba319af1 100644 --- a/apps/_documentation/static/en/chapter-07.html +++ b/apps/_documentation/static/en/chapter-07.html @@ -4,7 +4,7 @@ - The Database Abstraction Layer (DAL) — py4web 1.20240530.2 documentation + The Database Abstraction Layer (DAL) — py4web 20240630 documentation @@ -18,7 +18,7 @@ - + @@ -42,7 +42,7 @@
- 1.20240530.2 + 20240630
@@ -69,6 +69,7 @@
  • Experiment with the py4web shell
  • +
  • Using the dashboard app with databases
  • DAL constructor
    • DAL signature
    • Connection strings (the uri parameter)
    • @@ -263,7 +264,7 @@

      The Database Abstraction Layer (DAL)

      DAL introduction

      -

      py4web rely on a database abstraction layer (DAL), an API that maps +

      py4web rely on a database abstraction layer (DAL), an API that maps Python objects into database objects such as queries, tables, and records. The DAL dynamically generates the SQL in real time using the specified dialect for the database back end, so that you do not have to @@ -273,6 +274,14 @@

      DAL introductionpyDAL. It was conceived in the web2py project but it’s a standard python module: you can use it in any Python context.

      +
      +

      Note

      +

      What makes pyDAL different from most of the other DALs is the syntax: it maps +records to python dictionaries, which is simpler and closer to SQL. +Other famous frameworks instead strictly rely on an Object Relational Mapping (ORM) +like the Django ORM or the SQL Alchemy ORM, that maps tables to Python classes +and rows to Objects.

      +

      A little taste of pyDAL features:

      • Transactions

      • @@ -304,7 +313,7 @@

        Supported databases

  • -
    Row

    contains field values.

    +
    Row

    contains field values:

    DAL constructor

    Basic use:

    @@ -611,7 +635,11 @@

    Connection strings (the uri parameter)
  • in SQLite the database consists of a single file. If it does -not exist, it is created. This file is locked every time it is accessed.

  • +not exist, it is created. This file is locked every time it is accessed. +In addition to the file ‘storage.sqlite’ that contains the data, there will +be also a sql.log file plus one additional file called longhash_tablename.table +for every table definition. The table definition files are used during migrations; +in case of problems they could be deleted (they’ll be automatically recreated).

  • in the case of MySQL, PostgreSQL, MSSQL, FireBird, Oracle, DB2, Ingres and Informix the database “test” must be created outside py4web. Once the connection is established, py4web will create, alter, and drop @@ -693,8 +721,8 @@

    Lazy Tables

    Model-less applications

    -

    In py4web the code defined outside of actions (where normally DAL tables -are defined) is only executed at startup.

    +

    Normally in py4web the code that define DAL tables lives in the file +models.py, hence it’s only executed at startup because it’s outside of actions.

    However, it is possible to define DAL tables on demand inside actions. This is referred to as “model-less” development by the py4web community.

    To use the “model-less” approach, you take responsibility for doing @@ -812,14 +840,20 @@

    Other DAL constructor parameters

    Database folder location

    folder sets the place where migration files will be created (see -Migrations for details). -It is also used for SQLite databases. Automatically set within py4web. -Set a path when using DAL outside py4web.

    +Migrations for details). By default it’s automatically set within py4web on the same +folder of the database itself, but you have to specify it when using DAL outside py4web.

    +

    Note that for SQLite databases it’s normally necessary, +otherwise you’ll implictly choose an in memory database (where folder and +migrations don’t have any sense). So these constructors have the same meaning:

    +
    db = DAL('sqlite://storage.sqlite') # folder parameter not specified
    +db = DAL('sqlite:memory')           # in memory database
    +
    +

  • Default migration settings

    The DAL constructor migration settings are booleans affecting defaults -and global behaviour.

    +and global behaviour (again, see Migrations for details)

    migrate = True sets default migrate behavior for all tables

    fake_migrate = False sets default fake_migrate behavior for all tables

    @@ -834,7 +868,7 @@

    commit

    If you pass db in an action.uses decorator, you don’t need to call -commit in the controller, it is done for you. (Also, if you use +commit in the controller, it is automatically done for you (also, if you use authenticated or unauthenticated decorator.)

    -

    It is internally implemented as a table, which in +

    Tags are hierarchical. Then find([“color”]) would return id1 and id2 +because both records have tags with “color”.

    +

    It is internally implemented with the creation of an additional table, which in this example would be db.thing_tags_default, because no tail was -specified on the Tags(table, tail=“default”) constructor.

    -

    The find method is doing a search by startswith of the -parameter. Then find([“color”]) would return id1 and id2 -because both records have tags starting with “color”. py4web uses tags as a -flexible mechanism to manage permissions.

    +specified on the Tags(table, tail=“default”) constructor.

    +

    py4web uses Tags as a flexible mechanism to manage permissions, we’ll see +all the details later on the Authorization using Tags chapter.

    @@ -2302,7 +2336,7 @@

    join, left

    cache, cacheable

    An example use which gives much faster selects is:

    -
    rows = db(query).select(cache=(cache.ram, 3600), cacheable=True)
    +
    rows = db(query).select(cache=(cache.get, 3600), cacheable=True)
     

    Look at Caching selects, to understand what the trade-offs are.

    @@ -2617,7 +2651,9 @@

    findCaching selects

    The select method also takes a cache argument, which defaults to None. For caching purposes, it should be set to a tuple where the first -element is the cache model (cache.ram, cache.disk, etc.), and +element is the cache function with signature (key, callback, expiration) +(ror example cache.get assuming cache +is an instance of the py4web cache object), and the second element is the expiration time in seconds.

    In the following example, you see a controller that caches a select on the previously defined db.log table. The actual select fetches data from @@ -2626,7 +2662,7 @@

    Caching selects
    def cache_db_select():
    -    logs = db().select(db.log.ALL, cache=(cache.ram, 60))
    +    logs = db().select(db.log.ALL, cache=(cache.get, 60))
         return dict(logs=logs)
     

    @@ -2644,7 +2680,7 @@

    Caching selectscache argument is used in conjunction with cacheable=True the entire Rows object is cached and this results in much faster caching:

    -
    rows = db(query).select(cache=(cache.ram, 3600), cacheable=True)
    +
    rows = db(query).select(cache=(cache.get, 3600), cacheable=True)
     

    @@ -3102,10 +3138,9 @@

    Many to many relationCurt

    -

    A lighter alternative to many-to-many relations is tagging, you can -found an example of this in the next section. Tagging works even on -database backends that do not support JOINs like the Google App Engine -NoSQL.

    +

    A lighter alternative to many-to-many relations is tagging, see the +Authorization using Tags chapter. Tagging works even on database backends +that do not support JOINs like the Google App Engine NoSQL.

    Self-Reference and aliases

    @@ -3648,7 +3683,7 @@

    HTML and XML (one Table at a time)TAG helper +tags, you can easily do that using the universal TAG XML helper that we’ll see later and the Python syntax *<iterable> allowed in function calls:

    >>> rows = db(db.person).select()
    @@ -3662,6 +3697,12 @@ 

    HTML and XML (one Table at a time)</result>

    +
    +

    Warning

    +

    Do not confuse the TAG XML helper used here (see the TAG +chapter) with the Tags method that will be extensively explained +on the Authorization using Tags chapter.

    +

    Data representation

    @@ -4534,7 +4575,7 @@

    Google NoSQL (Datastore) - v: 1.20240530.2 + v: 20240630
    diff --git a/apps/_documentation/static/en/chapter-08.html b/apps/_documentation/static/en/chapter-08.html index f77ccbbd..cacfa16c 100644 --- a/apps/_documentation/static/en/chapter-08.html +++ b/apps/_documentation/static/en/chapter-08.html @@ -4,7 +4,7 @@ - The RestAPI — py4web 1.20240530.2 documentation + The RestAPI — py4web 20240630 documentation @@ -18,7 +18,7 @@ - + @@ -42,7 +42,7 @@
    - 1.20240530.2 + 20240630
    @@ -1171,7 +1171,7 @@

    The RestAPI response - v: 1.20240530.2 + v: 20240630
    diff --git a/apps/_documentation/static/en/chapter-09.html b/apps/_documentation/static/en/chapter-09.html index d3cefbb9..20ac54aa 100644 --- a/apps/_documentation/static/en/chapter-09.html +++ b/apps/_documentation/static/en/chapter-09.html @@ -4,7 +4,7 @@ - YATL Template Language — py4web 1.20240530.2 documentation + YATL Template Language — py4web 20240630 documentation @@ -18,7 +18,7 @@ - + @@ -42,7 +42,7 @@
    - 1.20240530.2 + 20240630
    @@ -762,7 +762,7 @@

    Mobile development - v: 1.20240530.2 + v: 20240630
    diff --git a/apps/_documentation/static/en/chapter-10.html b/apps/_documentation/static/en/chapter-10.html index d1721515..9470a299 100644 --- a/apps/_documentation/static/en/chapter-10.html +++ b/apps/_documentation/static/en/chapter-10.html @@ -4,7 +4,7 @@ - YATL helpers — py4web 1.20240530.2 documentation + YATL helpers — py4web 20240630 documentation @@ -18,7 +18,7 @@ - + @@ -42,7 +42,7 @@
    - 1.20240530.2 + 20240630
    @@ -872,7 +872,7 @@

    Using Inject - v: 1.20240530.2 + v: 20240630
    diff --git a/apps/_documentation/static/en/chapter-11.html b/apps/_documentation/static/en/chapter-11.html index 801b7737..620e182d 100644 --- a/apps/_documentation/static/en/chapter-11.html +++ b/apps/_documentation/static/en/chapter-11.html @@ -4,7 +4,7 @@ - Internationalization — py4web 1.20240530.2 documentation + Internationalization — py4web 20240630 documentation @@ -18,7 +18,7 @@ - + @@ -42,7 +42,7 @@
    - 1.20240530.2 + 20240630
    @@ -220,7 +220,7 @@

    Update the translation files - v: 1.20240530.2 + v: 20240630
    diff --git a/apps/_documentation/static/en/chapter-12.html b/apps/_documentation/static/en/chapter-12.html index e0bf2ca3..0bff6522 100644 --- a/apps/_documentation/static/en/chapter-12.html +++ b/apps/_documentation/static/en/chapter-12.html @@ -4,7 +4,7 @@ - Forms — py4web 1.20240530.2 documentation + Forms — py4web 20240630 documentation @@ -18,7 +18,7 @@ - + @@ -42,7 +42,7 @@
    - 1.20240530.2 + 20240630
    @@ -188,7 +188,7 @@

    FormsThe Form class provides a high-level API for quickly building CRUD (create, update and delete) forms, especially for working on an existing database table. It can generate and process a form from a list of desired fields and/or from an existing database table.

    -

    There are 3 typs of forms:

    +

    There are 3 types of forms:

    CRUD Create forms:

    @@ -1060,7 +1060,7 @@

    Sorted options

    IS_IN_SET and Tagging

    The IS_IN_SET validator has an optional attribute multiple=False. If set to True, multiple values can be stored in one -field. The field should be of type list:integer or list:string as discussed in [[Chapter 6 ../06#list-type-and-contains]]. +field. The field should be of type list:integer or list:string as discussed in list:<type> and contains. An explicit example of tagging is discussed there. We strongly suggest using the jQuery multiselect plugin to render multiple fields.

    Note that when multiple=True, IS_IN_SET will accept zero or more values, i.e. it will accept the field when nothing has been selected. multiple can also be a tuple of the form (a, b) where a and b are the minimum and (exclusive) maximum number of items @@ -1611,7 +1611,7 @@

    Validation functions - v: 1.20240530.2 + v: 20240630
    diff --git a/apps/_documentation/static/en/chapter-13.html b/apps/_documentation/static/en/chapter-13.html index 4741b79a..24dc69f0 100644 --- a/apps/_documentation/static/en/chapter-13.html +++ b/apps/_documentation/static/en/chapter-13.html @@ -4,7 +4,7 @@ - Authentication and authorization — py4web 1.20240530.2 documentation + Authentication and authorization — py4web 20240630 documentation @@ -18,7 +18,7 @@ - + @@ -42,7 +42,7 @@
    - 1.20240530.2 + 20240630
    @@ -430,7 +430,8 @@

    OAuth2 with Discord

    As already mentioned, authorization is the process of verifying what specific applications, files, and data a user has access to. This is accomplished -in py4web using Tags.

    +in py4web using Tags, that we’ve already discovered on Tagging records +in the DAL chapter.

    Tags and Permissions

    Py4web provides a general purpose tagging @@ -449,12 +450,13 @@

    Tags and PermissionsTo use the tagging system you first need to import the Tags module from pydal.tools. Then create a Tags object to tag a table:

    from pydal.tools.tags import Tags
    -groups = Tags(db.auth_user)
    +groups = Tags(db.auth_user, 'groups')
     
    -

    If you look at the database level, a new table will be created with a -name equals to tagged_db + ‘_tag’ + tagged_name, in this case -auth_user_tag_groups:

    +

    The tail_name parameter is optional and if not specified the ‘default’ +value will be used. If you look at the database level, a new table will +be created with a name equals to tagged_db + '_tag_' + tail_name, +in this case auth_user_tag_groups:

    _images/tags_db.png

    Then you can add one or more tags to records of the table as well as remove existing tags:

    @@ -491,6 +493,22 @@

    Tags and Permissionsreturn {'users': users}

    +

    We’ve already seen a simple requires_membership fixture on :ref:The Condition fixture. It +enables the following syntax:

    +
    groups = Tags(db.auth_user)
    +
    +def requires_membership(group_name):
    +    return Condition(
    +       lambda: group_name in groups.get(auth.user_id),
    +       exception=HTTP(404)
    +    )
    +
    +@action('index')
    +@action.uses(requires_membership('teacher'))
    +def index():
    +    return 'hello teacher'
    +
    +

    We leave it to you as an exercise to create a fixture has_membership to enable the following syntax:

    @action('index')
    @@ -616,7 +634,7 @@ 

    User Impersonation - v: 1.20240530.2 + v: 20240630
    diff --git a/apps/_documentation/static/en/chapter-14.html b/apps/_documentation/static/en/chapter-14.html index 97d7217d..3b834a34 100644 --- a/apps/_documentation/static/en/chapter-14.html +++ b/apps/_documentation/static/en/chapter-14.html @@ -4,7 +4,7 @@ - Grid — py4web 1.20240530.2 documentation + Grid — py4web 20240630 documentation @@ -18,7 +18,7 @@ - + @@ -42,7 +42,7 @@
    - 1.20240530.2 + 20240630
    @@ -84,6 +84,7 @@
  • Reference Fields
  • +
  • Grids with checkboxes
  • From web2py to py4web
  • @@ -614,6 +615,38 @@

    Reference Fields +

    Grids with checkboxes

    +

    While the grid, per se, does not support checkboxes, you can use custom columns to add one or more columns of checboxes. +You can also add the helpers logic (the grid uses helpers to generate HTML) to wrap it in a <form> and add one +or more submit bottons. You can then add logic to process the selected rows when the button is selected. For example:

    +
    column = Column("select", lambda row: INPUT(_type="checkbox",_name="selected_id",_value=row.id))
    +
    +@action("manage")
    +@action("manage/<path:path>")
    +@action.uses("manage.html", db)
    +def manage(path=None):
    +
    +   grid = Grid(path, db.thing, columns=[column, db.thing.name])
    +
    +   # if we are displaying a "select" grid page (not a form)
    +   if not grid.form:
    +      grid = grid.render()
    +      # if checkboxes selection was submitted
    +      if request.method == "POST":
    +         # do something with the selected ids
    +         print("you selected", request.POST.get("selected_id"))
    +      # inject a ``<form>`` and a ``submit`` button
    +      grid.children[1:] = [FORM(
    +            *grid.children[1:],
    +            DIV(INPUT(_type="submit",_value="do it!")),
    +            _method="POST",
    +            _action=request.url)]
    +   return locals()
    +
    +
    +

    Notice in the above example request.POST.get("selected_id") can be a single ID (if one selected) or a list of IDs (if more than one elsected).

    + @@ -652,7 +685,7 @@

    Reference Fields - v: 1.20240530.2 + v: 20240630
    diff --git a/apps/_documentation/static/en/chapter-15.html b/apps/_documentation/static/en/chapter-15.html index bc0a01ff..6577f6d7 100644 --- a/apps/_documentation/static/en/chapter-15.html +++ b/apps/_documentation/static/en/chapter-15.html @@ -4,7 +4,7 @@ - From web2py to py4web — py4web 1.20240530.2 documentation + From web2py to py4web — py4web 20240630 documentation @@ -18,7 +18,7 @@ - + @@ -42,7 +42,7 @@
    - 1.20240530.2 + 20240630
    @@ -490,7 +490,7 @@

    “auth” example - v: 1.20240530.2 + v: 20240630
    diff --git a/apps/_documentation/static/en/chapter-16.html b/apps/_documentation/static/en/chapter-16.html index c396aa5a..03884661 100644 --- a/apps/_documentation/static/en/chapter-16.html +++ b/apps/_documentation/static/en/chapter-16.html @@ -4,7 +4,7 @@ - Advanced topics and examples — py4web 1.20240530.2 documentation + Advanced topics and examples — py4web 20240630 documentation @@ -18,7 +18,7 @@ - + @@ -41,7 +41,7 @@
    - 1.20240530.2 + 20240630
    @@ -70,6 +70,7 @@
  • From web2py to py4web
  • Advanced topics and examples
    • The scheduler
    • +
    • Sending messages using a background task
    • Celery
    • py4web and asyncio
    • htmx
        @@ -120,15 +121,15 @@

        The schedulertask_run and enqueueing runs of the predefined task as table records. -Each task_run references a task and contains the input to be passed to that task. The scheduler will caputure the +Each task_run references a task and contains the input to be passed to that task. The scheduler will capture the task stdout+stderr in a db.task_run.log and the task output in db.task_run.output.

        A py4web thread loops and finds the next task that needs to be executed. For each task it creates a worker process and assigns the task to the worker process. You can specify how many worker processes should run concurrently. The worker processes are daemons and they only live for the life of one task run. Each worker process is only responsible for executing that one task in isolation. The main loop is responsible for assigning tasks and timeouts.

        The system is very robust because the only source of truth is the database and its integrity is guaranteed by -transational safety. Even if py4web is killed, running tasks continue to run unless they complete, fail, or are -explicitely killed.

        +transactional safety. Even if py4web is killed, running tasks continue to run unless they complete, fail, or are +explicitly killed.

        Aside for allowing multiple concurrent task runs in execution on one node, it is also possible to run multiple instances of the scheduler on different computing nodes, as long as they use the same client/server database for task_run and as long as @@ -159,7 +160,7 @@

        The schedulerUSE_SCHEDULER=True in settings.py.

        You can manage your task runs busing the dashboard or using a Grid(path, db.task_run).

        -

        To prevent database locks (in particular with sqlite) we recommand:

        +

        To prevent database locks (in particular with sqlite) we recommend:

        • Use a different database for the scheduler and everything else

        • Always db.commit() as soon as possible after any insert/update/delete

        • @@ -174,11 +175,71 @@

          The scheduler +

          Sending messages using a background task

          +

          As en example of application of the above, +Consider the case of wanting to send emails asynchronously from a background task. +In this example we send them using SendGrid from Twilio (https://www.twilio.com/docs/sendgrid/for-developers/sending-email/quickstart-python) +Also we assume emails are represented by the following JSON structure

          +

          That means you need a new task:

          +
          import sendgrid
          +from sendgrid.helpers.mail import Mail, Email, To, Content
          +
          +def sendmail_task(from_addr, to_addrs, subject, body):
          +    ""
          +    # build the messages using sendgrid API
          +    from_email = Email(from_addr)  # Must be your verified sender
          +    content_type = "text/plain" if body[:6] != "<html>" else "text/html"
          +    content = Content(content_type, body)
          +    mail = Mail(from_email, To(to_addrs), subject, content)
          +    # ask sendgrid to deliver it
          +    sg = sendgrid.SendGridAPIClient(api_key=settings.SENDGRID_API_KEY)
          +    response = sg.client.mail.send.post(request_body=mail.get())
          +    # check if worked
          +    assert response.status_code == "200"
          +
          +# register the above task with the scheduler
          +scheduler.register_task("sendmail", sendmail_task)
          +
          +
          +

          To schedule sending a new email do:

          +
          email = {
          +    "from_addr": "me@example.com",
          +    "to_addrs": ["me@example.com"],
          +    "subject": "Hello World",
          +    "body": "I am alive!",
          +}
          +scheduler.enqueue_run(name="sendmail", inputs=email, scheduled_for=None)
          +
          +
          +

          The key:value in the email representation must match the arguments of the task. +The scheuled_for argument is optional and allows you to specify when the email should be sent. +You can use the Dashboard to see the status of your task_run``s for the task called ``sendmail.

          +

          You can also tell auth to tap into above mechanism for sending emails:

          +
          class MySendGridSender:
          +    def __init__(self, from_addr):
          +        self.from_addr = from_adds
          +    def send(self, to_addr, subject, body):
          +        email = {
          +            "from_addr": self.from_addr,
          +            "to_addrs": [to_addr],
          +            "subject": subject,
          +            "body": body,
          +        }
          +        scheduler.enqueue_run(name="sendmail", inputs=email)
          +
          +auth.sender = MySendGridSender(from_addr="me@example.com")
          +
          +
          +

          With the above, Auth will not send emails using smtplib. Instead it will send them with SendGrid using the scheduler. +Notice the only requirement here is that auth.sender must be an object with a send method with the same signature as in the example.

          +

          Notice, it it also possible to send SMS messages instead of emails but this requires 1) store the phone number in auth_user and 2) override the Auth.send method.

          +

          Celery

          Yes. You can use Celery instead of the build-in scheduler but it adds complexity and it is less robust. -Yet the build-in schduler is designed for long running tasks and the database can become a bottle neck -if you have hundrands running concurrently. Celery may work better if you have more than 100 concurrent +Yet the build-in scheduler is designed for long running tasks and the database can become a bottleneck +if you have hundreds of tasks running concurrently. Celery may work better if you have more than 100 concurrent tasks and/or they are short running tasks.

          @@ -827,7 +888,7 @@

          The T object - v: 1.20240530.2 + v: 20240630
          diff --git a/apps/_documentation/static/en/genindex.html b/apps/_documentation/static/en/genindex.html index 9fdaaef3..dd693313 100644 --- a/apps/_documentation/static/en/genindex.html +++ b/apps/_documentation/static/en/genindex.html @@ -3,7 +3,7 @@ - Index — py4web 1.20240530.2 documentation + Index — py4web 20240630 documentation @@ -17,7 +17,7 @@ - + @@ -40,7 +40,7 @@
          - 1.20240530.2 + 20240630
          @@ -134,7 +134,7 @@

          Index

          - v: 1.20240530.2 + v: 20240630
          diff --git a/apps/_documentation/static/en/index.html b/apps/_documentation/static/en/index.html index ceb190f6..6908d7b1 100644 --- a/apps/_documentation/static/en/index.html +++ b/apps/_documentation/static/en/index.html @@ -4,7 +4,7 @@ - py4web: the reference Manual — py4web 1.20240530.2 documentation + py4web: the reference Manual — py4web 20240630 documentation @@ -18,7 +18,7 @@ - + @@ -41,7 +41,7 @@
          - 1.20240530.2 + 20240630
          @@ -154,6 +154,7 @@

          py4web: the reference ManualThe Database Abstraction Layer (DAL)
        • From web2py to py4web
            @@ -226,6 +228,7 @@

            py4web: the reference ManualAdvanced topics and examples
            • The scheduler
            • +
            • Sending messages using a background task
            • Celery
            • py4web and asyncio
            • htmx
            • @@ -279,7 +282,7 @@

              Indices and tables - v: 1.20240530.2 + v: 20240630
              diff --git a/apps/_documentation/static/en/objects.inv b/apps/_documentation/static/en/objects.inv index 97a9bb64..ddb1c35e 100644 Binary files a/apps/_documentation/static/en/objects.inv and b/apps/_documentation/static/en/objects.inv differ diff --git a/apps/_documentation/static/en/search.html b/apps/_documentation/static/en/search.html index 29ceb326..7a110d2e 100644 --- a/apps/_documentation/static/en/search.html +++ b/apps/_documentation/static/en/search.html @@ -3,7 +3,7 @@ - Search — py4web 1.20240530.2 documentation + Search — py4web 20240630 documentation @@ -18,7 +18,7 @@ - + @@ -43,7 +43,7 @@
              - 1.20240530.2 + 20240630
              @@ -141,7 +141,7 @@ - v: 1.20240530.2 + v: 20240630
              diff --git a/apps/_documentation/static/en/searchindex.js b/apps/_documentation/static/en/searchindex.js index 11bcaf04..46d0a114 100644 --- a/apps/_documentation/static/en/searchindex.js +++ b/apps/_documentation/static/en/searchindex.js @@ -1 +1 @@ -Search.setIndex({"alltitles": {"A": [[10, "a"]], "A minimal form example without a database": [[12, "a-minimal-form-example-without-a-database"]], "A modern python workplace": [[1, "a-modern-python-workplace"]], "ANY_OF": [[12, "any-of"]], "Acknowledgments": [[0, "acknowledgments"]], "Adding attributes to fields and tables": [[6, "adding-attributes-to-fields-and-tables"]], "Advanced features": [[6, "advanced-features"]], "Advanced form design": [[12, "advanced-form-design"]], "Advanced topics and examples": [[16, "advanced-topics-and-examples"]], "Auth Plugins": [[13, "auth-plugins"]], "Auth UI": [[13, "auth-ui"]], "Authentication and authorization": [[13, "authentication-and-authorization"]], "Authentication using Auth": [[13, "authentication-using-auth"]], "Authorization using Tags": [[13, "authorization-using-tags"]], "Autocomplete Widget using htmx": [[16, "autocomplete-widget-using-htmx"]], "BEAUTIFY": [[10, "beautify"]], "BODY": [[10, "body"]], "Basic form example": [[12, "basic-form-example"]], "Basic grid example": [[14, "basic-grid-example"]], "Basic syntax": [[8, "basic-syntax"]], "Built-in helpers": [[10, "built-in-helpers"]], "CAT": [[10, "cat"]], "CLEANUP": [[12, "cleanup"]], "CRUD settings": [[14, "crud-settings"]], "CRYPT": [[12, "crypt"]], "CSV (all tables at once)": [[6, "csv-all-tables-at-once"]], "CSV (one Table at a time)": [[6, "csv-one-table-at-a-time"]], "CSV and remote database synchronization": [[6, "csv-and-remote-database-synchronization"]], "Caching and Memoize": [[5, "caching-and-memoize"]], "Caching selects": [[6, "caching-selects"]], "Caveats about fixtures": [[5, "caveats-about-fixtures"]], "Celery": [[16, "celery"]], "Checkbox validation": [[12, "checkbox-validation"]], "Client-side session in cookies": [[5, "client-side-session-in-cookies"]], "Combining rows": [[6, "combining-rows"]], "Command line options": [[2, "command-line-options"]], "Common filters": [[6, "common-filters"]], "Complexity and security validators": [[12, "complexity-and-security-validators"]], "Computed and Virtual fields": [[6, "computed-and-virtual-fields"]], "Computed fields": [[6, "computed-fields"]], "Connection failures (attempts parameter)": [[6, "connection-failures-attempts-parameter"]], "Connection pooling": [[6, "connection-pooling"]], "Connection strings (the uri parameter)": [[6, "connection-strings-the-uri-parameter"]], "Contents:": [[17, null]], "Convenience Decorators": [[5, "convenience-decorators"]], "Copy data from one db into another": [[6, "copy-data-from-one-db-into-another"]], "Copying the _scaffold app": [[4, "copying-the-scaffold-app"]], "Creating an app": [[4, "creating-an-app"]], "Custom Action Buttons": [[14, "custom-action-buttons"]], "Custom Field types": [[6, "custom-field-types"]], "Custom columns": [[14, "custom-columns"]], "Custom fixtures": [[5, "custom-fixtures"]], "Custom forms": [[12, "custom-forms"]], "Custom helpers": [[10, "custom-helpers"]], "Custom widgets": [[12, "custom-widgets"]], "Customizing style": [[14, "customizing-style"]], "DAL constructor": [[6, "dal-constructor"]], "DAL introduction": [[6, "dal-introduction"]], "DAL signature": [[6, "dal-signature"]], "DIV": [[10, "div"]], "Data representation": [[6, "data-representation"]], "Database cascades": [[6, "database-cascades"]], "Database folder location": [[6, "database-folder-location"]], "Database quoting and case settings": [[6, "database-quoting-and-case-settings"]], "Database validators": [[12, "database-validators"]], "Date and time validators": [[12, "date-and-time-validators"]], "Debugging py4web with PyCharm": [[1, "debugging-py4web-with-pycharm"]], "Debugging py4web with VScode": [[1, "debugging-py4web-with-vscode"]], "Default migration settings": [[6, "default-migration-settings"]], "Default page layout": [[8, "default-page-layout"]], "Default values with coalesce and coalesce_zero": [[6, "default-values-with-coalesce-and-coalesce-zero"]], "Deployment on Docker/Podman": [[2, "deployment-on-docker-podman"]], "Deployment on GCloud (aka GAE - Google App Engine)": [[2, "deployment-on-gcloud-aka-gae-google-app-engine"]], "Deployment on PythonAnywhere.com": [[2, "deployment-on-pythonanywhere-com"]], "Deployment on Ubuntu": [[2, "deployment-on-ubuntu"]], "Dictionaries and tuples with IS_IN_SET": [[12, "dictionaries-and-tuples-with-is-in-set"]], "Distributed transaction": [[6, "distributed-transaction"]], "Dynamic Web Pages": [[4, "dynamic-web-pages"]], "EM": [[10, "em"]], "Experiment with the py4web shell": [[6, "experiment-with-the-py4web-shell"]], "Exporting and importing data": [[6, "exporting-and-importing-data"]], "Expressions": [[6, "expressions"]], "Extending using variables": [[8, "extending-using-variables"]], "FORM": [[10, "form"]], "Fetching a Row": [[6, "fetching-a-row"]], "Field constructor": [[6, "field-constructor"]], "Field types and validators": [[6, "field-types-and-validators"]], "File upload field": [[12, "file-upload-field"]], "First run": [[2, "first-run"]], "Fixing broken migrations": [[6, "fixing-broken-migrations"]], "Fixtures": [[5, "fixtures"]], "Form structure manipulation": [[12, "form-structure-manipulation"]], "Form validation": [[12, "form-validation"]], "Forms": [[12, "forms"]], "From scratch": [[4, "from-scratch"]], "From web2py to py4web": [[15, "from-web2py-to-py4web"]], "Generating raw SQL": [[6, "generating-raw-sql"]], "Google NoSQL (Datastore)": [[6, "google-nosql-datastore"]], "Google SQL": [[6, "google-sql"]], "Gotchas": [[6, "gotchas"]], "Grid": [[14, "grid"]], "Grouping and counting": [[6, "grouping-and-counting"]], "H1, H2, H3, H4, H5, H6": [[10, "h1-h2-h3-h4-h5-h6"]], "HEAD": [[10, "head"]], "HTML": [[10, "html"]], "HTML and XML (one Table at a time)": [[6, "html-and-xml-one-table-at-a-time"]], "HTTPS": [[2, "https"]], "Help, resources and hints": [[1, "help-resources-and-hints"]], "Helpers overview": [[10, "helpers-overview"]], "Hints and tips": [[1, "hints-and-tips"]], "How to contribute": [[1, "how-to-contribute"]], "I": [[10, "i"]], "IMG": [[10, "img"]], "INPUT": [[10, "input"]], "IS_ALPHANUMERIC": [[12, "is-alphanumeric"]], "IS_DATE": [[12, "is-date"]], "IS_DATETIME": [[12, "is-datetime"]], "IS_DATETIME_IN_RANGE": [[12, "is-datetime-in-range"]], "IS_DATE_IN_RANGE": [[12, "is-date-in-range"]], "IS_DECIMAL_IN_RANGE": [[12, "is-decimal-in-range"]], "IS_EMAIL": [[12, "is-email"]], "IS_EMPTY_OR": [[12, "is-empty-or"]], "IS_EQUAL_TO": [[12, "is-equal-to"]], "IS_EXPR": [[12, "is-expr"]], "IS_FILE": [[12, "is-file"]], "IS_FLOAT_IN_RANGE": [[12, "is-float-in-range"]], "IS_IMAGE": [[12, "is-image"]], "IS_INT_IN_RANGE": [[12, "is-int-in-range"]], "IS_IN_DB": [[12, "is-in-db"]], "IS_IN_DB and Tagging": [[12, "is-in-db-and-tagging"]], "IS_IN_SET": [[12, "is-in-set"]], "IS_IN_SET and Tagging": [[12, "is-in-set-and-tagging"]], "IS_IPADDRESS": [[12, "is-ipaddress"]], "IS_IPV4": [[12, "is-ipv4"]], "IS_IPV6": [[12, "is-ipv6"]], "IS_JSON": [[12, "is-json"]], "IS_LENGTH": [[12, "is-length"]], "IS_LIST_OF": [[12, "is-list-of"]], "IS_LIST_OF_EMAILS": [[12, "is-list-of-emails"]], "IS_LOWER": [[12, "is-lower"]], "IS_MATCH": [[12, "is-match"]], "IS_NOT_EMPTY": [[12, "is-not-empty"]], "IS_NOT_IN_DB": [[12, "is-not-in-db"]], "IS_NULL_OR": [[12, "is-null-or"]], "IS_SAFE": [[12, "is-safe"]], "IS_SLUG": [[12, "is-slug"]], "IS_STRONG": [[12, "is-strong"]], "IS_TIME": [[12, "is-time"]], "IS_UPLOAD_FILENAME": [[12, "is-upload-filename"]], "IS_UPPER": [[12, "is-upper"]], "IS_URL": [[12, "is-url"]], "Indexes": [[6, "indexes"]], "Indices and tables": [[17, "indices-and-tables"]], "Information workflow": [[8, "information-workflow"]], "Inner join": [[6, "inner-join"]], "Inserting and updating from a dictionary": [[6, "inserting-and-updating-from-a-dictionary"]], "Installation and Startup": [[2, "installation-and-startup"]], "Installing from binaries": [[2, "installing-from-binaries"]], "Installing from pip, using a virtual environment": [[2, "installing-from-pip-using-a-virtual-environment"]], "Installing from pip, without virtual environment": [[2, "installing-from-pip-without-virtual-environment"]], "Installing from source (globally)": [[2, "installing-from-source-globally"]], "Installing from source (locally)": [[2, "installing-from-source-locally"]], "Internationalization": [[11, "internationalization"]], "Joins and Relations": [[6, "joins-and-relations"]], "Key features": [[14, "key-features"]], "LABEL": [[10, "label"]], "LDAP": [[13, "ldap"]], "LI": [[10, "li"]], "Lazy Tables": [[6, "lazy-tables"]], "Left outer join": [[6, "left-outer-join"]], "Legacy databases and keyed tables": [[6, "legacy-databases-and-keyed-tables"]], "Logical operators": [[6, "logical-operators"]], "Login into the Dashboard": [[3, "login-into-the-dashboard"]], "MSSQL (Microsoft SQL Server)": [[6, "mssql-microsoft-sql-server"]], "Making a secure connection": [[6, "making-a-secure-connection"]], "Many to many relation": [[6, "many-to-many-relation"]], "Migration control summary": [[6, "migration-control-summary"]], "Migrations": [[6, "migrations"]], "Mobile development": [[8, "mobile-development"]], "Model-less applications": [[6, "model-less-applications"]], "More on uploads": [[6, "more-on-uploads"]], "Multiple Tags objects": [[13, "multiple-tags-objects"]], "Multiple fixtures": [[5, "multiple-fixtures"]], "MySQL": [[6, "mysql"]], "New style virtual fields (experimental)": [[6, "new-style-virtual-fields-experimental"]], "Note on new DAL and adapters": [[6, "note-on-new-dal-and-adapters"]], "OAuth2 with Discord": [[13, "oauth2-with-discord"]], "OAuth2 with Facebook": [[13, "oauth2-with-facebook"]], "OAuth2 with Google": [[13, "oauth2-with-google"]], "OL": [[10, "ol"]], "OPTION": [[10, "option"]], "Old style virtual fields": [[6, "old-style-virtual-fields"]], "On return values": [[4, "on-return-values"]], "One to many relation": [[6, "one-to-many-relation"]], "Oracle": [[6, "oracle"]], "Other DAL constructor parameters": [[6, "other-dal-constructor-parameters"]], "Other operators": [[6, "other-operators"]], "Other validators": [[12, "other-validators"]], "P": [[10, "p"]], "PAM": [[13, "pam"]], "PRE": [[10, "pre"]], "Page layout standard structure": [[8, "page-layout-standard-structure"]], "Pluralize": [[11, "pluralize"]], "Prerequisites": [[1, "prerequisites"]], "Query, Set, Rows": [[6, "query-set-rows"]], "Range, set and equality validators": [[12, "range-set-and-equality-validators"]], "Raw SQL": [[6, "raw-sql"]], "Record versioning": [[6, "record-versioning"]], "Recursive selects": [[6, "recursive-selects"]], "Reference Fields": [[14, "reference-fields"]], "Rendering rows using represent": [[6, "rendering-rows-using-represent"]], "Replicated databases": [[6, "replicated-databases"]], "Reserved keywords": [[6, "reserved-keywords"]], "Resources": [[1, "resources"]], "RestAPI GET": [[7, "restapi-get"]], "RestAPI policies and actions": [[7, "restapi-policies-and-actions"]], "RestAPI practical examples": [[7, "restapi-practical-examples"]], "Routes": [[4, "routes"]], "Run-time field and table modification": [[6, "run-time-field-and-table-modification"]], "SCRIPT": [[10, "script"]], "SELECT": [[10, "select"]], "SPAN": [[10, "span"]], "SQLite": [[6, "sqlite"]], "STYLE": [[10, "style"]], "Sample Action Button Class": [[14, "sample-action-button-class"]], "Searching and filtering": [[14, "searching-and-filtering"]], "Self-Reference and aliases": [[6, "self-reference-and-aliases"]], "Server-side DOM": [[10, "server-side-dom"]], "Server-side session anywhere": [[5, "server-side-session-anywhere"]], "Server-side session in Redis": [[5, "server-side-session-in-redis"]], "Server-side session in database": [[5, "server-side-session-in-database"]], "Server-side session in memcache": [[5, "server-side-session-in-memcache"]], "Setup procedures": [[2, "setup-procedures"]], "Sharing sessions": [[5, "sharing-sessions"]], "Shortcuts": [[6, "shortcuts"]], "Simple conversion examples": [[15, "simple-conversion-examples"]], "Sorted options": [[12, "sorted-options"]], "Special installations": [[2, "special-installations"]], "Special type validators": [[12, "special-type-validators"]], "Standard widgets": [[12, "standard-widgets"]], "Static web pages": [[4, "static-web-pages"]], "Substrings": [[6, "substrings"]], "Supported databases": [[6, "supported-databases"]], "Supported platforms and prerequisites": [[2, "supported-platforms-and-prerequisites"]], "TABLE, TR, TD": [[10, "table-tr-td"]], "TAG": [[10, "tag"]], "TBODY": [[10, "tbody"]], "TEXTAREA": [[10, "textarea"]], "TH": [[10, "th"]], "THEAD": [[10, "thead"]], "TITLE": [[10, "title"]], "TT": [[10, "tt"]], "Table constructor": [[6, "table-constructor"]], "Table inheritance": [[6, "table-inheritance"]], "Table methods": [[6, "table-methods"]], "Tagging records": [[6, "tagging-records"]], "Tags and Permissions": [[13, "tags-and-permissions"]], "Template Functions": [[8, "template-functions"]], "Templates": [[4, "templates"]], "Text format validators": [[12, "text-format-validators"]], "The Auth fixture": [[5, "the-auth-fixture"]], "The Condition fixture": [[5, "the-condition-fixture"]], "The DAL fixture": [[5, "the-dal-fixture"]], "The DAL: a quick tour": [[6, "the-dal-a-quick-tour"]], "The Dashboard": [[3, "the-dashboard"]], "The Database Abstraction Layer (DAL)": [[6, "the-database-abstraction-layer-dal"]], "The Discord server": [[1, "the-discord-server"]], "The Flash fixture": [[5, "the-flash-fixture"]], "The Form constructor": [[12, "the-form-constructor"]], "The Google group": [[1, "the-google-group"]], "The Grid object": [[14, "the-grid-object"]], "The Inject fixture": [[5, "the-inject-fixture"]], "The Q object": [[16, "the-q-object"]], "The RestAPI": [[7, "the-restapi"]], "The RestAPI response": [[7, "the-restapi-response"]], "The Session fixture": [[5, "the-session-fixture"]], "The T object": [[16, "the-t-object"]], "The Template fixture": [[5, "the-template-fixture"]], "The Translator fixture": [[5, "the-translator-fixture"]], "The URLsigner fixture": [[5, "the-urlsigner-fixture"]], "The _scaffold app": [[4, "the-scaffold-app"]], "The main Web page": [[3, "the-main-web-page"]], "The request object": [[4, "the-request-object"]], "The scheduler": [[16, "the-scheduler"]], "The sidecar parameter": [[12, "the-sidecar-parameter"]], "The sources on GitHub": [[1, "the-sources-on-github"]], "This manual": [[1, "this-manual"]], "Timing queries": [[6, "timing-queries"]], "Tutorials and video": [[1, "tutorials-and-video"]], "Two Factor Authentication": [[13, "two-factor-authentication"]], "UL": [[10, "ul"]], "URL": [[10, "url"]], "Understanding the design": [[2, "understanding-the-design"]], "Update the translation files": [[11, "update-the-translation-files"]], "Upgrading": [[2, "upgrading"]], "User Impersonation": [[13, "user-impersonation"]], "Using Auth inside actions": [[13, "using-auth-inside-actions"]], "Using DAL without define tables": [[6, "using-dal-without-define-tables"]], "Using Fixtures": [[5, "using-fixtures"]], "Using Inject": [[10, "using-inject"]], "Using an iterator-based select for lower memory use": [[6, "using-an-iterator-based-select-for-lower-memory-use"]], "Using callable parameters": [[14, "using-callable-parameters"]], "Using templates": [[14, "using-templates"]], "Using the DAL \u201cstand-alone\u201d": [[6, "using-the-dal-stand-alone"]], "Validation functions": [[12, "validation-functions"]], "Virtual fields": [[6, "virtual-fields"]], "WSGI": [[2, "wsgi"]], "Watch for files change": [[4, "watch-for-files-change"]], "What is py4web?": [[0, "what-is-py4web"]], "Widgets": [[12, "widgets"]], "XML": [[10, "xml"]], "YATL Template Language": [[8, "yatl-template-language"]], "YATL helpers": [[10, "yatl-helpers"]], "_lastsql": [[6, "lastsql"]], "as_dict and as_list": [[6, "as-dict-and-as-list"]], "belongs": [[6, "belongs"]], "block and super": [[8, "block-and-super"]], "cache, cacheable": [[6, "cache-cacheable"]], "call command option": [[2, "call-command-option"]], "callbacks on record insert, delete and update": [[6, "callbacks-on-record-insert-delete-and-update"]], "case": [[6, "case"]], "children": [[10, "children"]], "commit and rollback": [[6, "commit-and-rollback"]], "count, isempty, delete, update": [[6, "count-isempty-delete-update"]], "def...return": [[8, "def-return"]], "define_table signature": [[6, "define-table-signature"]], "distinct": [[6, "distinct"]], "drop": [[6, "drop"]], "executesql": [[6, "executesql"]], "extend and include": [[8, "extend-and-include"]], "filter_in and filter_out": [[6, "filter-in-and-filter-out"]], "find": [[10, "find"]], "find, exclude, sort": [[6, "find-exclude-sort"]], "first and last": [[6, "first-and-last"]], "for...in": [[8, "for-in"]], "format: Record representation": [[6, "format-record-representation"]], "groupby, having": [[6, "groupby-having"]], "htmx": [[16, "htmx"]], "htmx usage in Form": [[16, "htmx-usage-in-form"]], "htmx usage in Grid": [[16, "htmx-usage-in-grid"]], "id: Notes about the primary key": [[6, "id-notes-about-the-primary-key"]], "if...elif...else": [[8, "if-elif-else"]], "insert": [[6, "insert"]], "join, left": [[6, "join-left"]], "like, ilike, regexp, startswith, endswith, contains, upper, lower": [[6, "like-ilike-regexp-startswith-endswith-contains-upper-lower"]], "limitby": [[6, "limitby"]], "list: and contains": [[6, "list-type-and-contains"]], "migrate, fake_migrate": [[6, "migrate-fake-migrate"]], "new_app command option": [[2, "new-app-command-option"]], "on_define": [[6, "on-define"]], "orderby": [[6, "orderby"]], "orderby, groupby, limitby, distinct, having, orderby_on_limitby, join, left, cache": [[6, "orderby-groupby-limitby-distinct-having-orderby-on-limitby-join-left-cache"]], "orderby_on_limitby": [[6, "orderby-on-limitby"]], "plural and singular": [[6, "plural-and-singular"]], "polymodel": [[6, "polymodel"]], "primarykey: Support for legacy tables": [[6, "primarykey-support-for-legacy-tables"]], "py4web and asyncio": [[16, "py4web-and-asyncio"]], "py4web model": [[6, "py4web-model"]], "py4web: the reference Manual": [[17, "py4web-the-reference-manual"]], "redefine": [[6, "redefine"]], "rname: Real name": [[6, "rname-real-name"]], "run command option": [[2, "run-command-option"]], "select command": [[6, "select-command"]], "sequence_name": [[6, "sequence-name"]], "set_password command option": [[2, "set-password-command-option"]], "setup command option": [[2, "setup-command-option"]], "shell command option": [[2, "shell-command-option"]], "string.format": [[16, "string-format"]], "sum, avg, min, max and len": [[6, "sum-avg-min-max-and-len"]], "table_class": [[6, "table-class"]], "trigger_name": [[6, "trigger-name"]], "try...except...else...finally": [[8, "try-except-else-finally"]], "two_factor_required": [[13, "two-factor-required"]], "two_factor_send": [[13, "two-factor-send"]], "two_factor_tries": [[13, "two-factor-tries"]], "update_or_insert": [[6, "update-or-insert"]], "update_record": [[6, "update-record"]], "utils.js": [[16, "utils-js"]], "validate_and_insert, validate_and_update": [[6, "validate-and-insert-validate-and-update"]], "version command option": [[2, "version-command-option"]], "while": [[8, "while"]], "year, month, day, hour, minutes, seconds": [[6, "year-month-day-hour-minutes-seconds"]], "\u201cAccessing OS files\u201d example": [[15, "accessing-os-files-example"]], "\u201cForm and flash\u201d example": [[15, "form-and-flash-example"]], "\u201cHello world\u201d example": [[15, "hello-world-example"]], "\u201cRedirect with variables\u201d example": [[15, "redirect-with-variables-example"]], "\u201cReturn calling methods\u201d example": [[15, "return-calling-methods-example"]], "\u201cReturning args\u201d example": [[15, "returning-args-example"]], "\u201cReturning variables\u201d example": [[15, "returning-variables-example"]], "\u201cSetting up a counter\u201d example": [[15, "setting-up-a-counter-example"]], "\u201cView\u201d example": [[15, "view-example"]], "\u201cauth\u201d example": [[15, "auth-example"]], "\u201cgrid\u201d example": [[15, "grid-example"]]}, "docnames": ["chapter-01", "chapter-02", "chapter-03", "chapter-04", "chapter-05", "chapter-06", "chapter-07", "chapter-08", "chapter-09", "chapter-1", "chapter-10", "chapter-11", "chapter-12", "chapter-13", "chapter-14", "chapter-15", "chapter-16", "index"], "envversion": {"sphinx": 61, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2}, "filenames": ["chapter-01.rst", "chapter-02.rst", "chapter-03.rst", "chapter-04.rst", "chapter-05.rst", "chapter-06.rst", "chapter-07.rst", "chapter-08.rst", "chapter-09.rst", "chapter-1.rst", "chapter-10.rst", "chapter-11.rst", "chapter-12.rst", "chapter-13.rst", "chapter-14.rst", "chapter-15.rst", "chapter-16.rst", "index.rst"], "indexentries": {}, "objects": {}, "objnames": {}, "objtypes": {}, "terms": {"": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13, 14, 16], "0": [2, 3, 5, 6, 7, 8, 10, 11, 12, 13, 14, 15, 16], "00": 7, "01": 7, "02": [6, 12], "03": [2, 6, 7], "04": 2, "04t07": 7, "05": 7, "06": 12, "08": 12, "0x4e86": 12, "0x7fa533ff7640": 10, "1": [2, 3, 5, 6, 7, 8, 10, 11, 12, 14, 15, 16], "10": [2, 6, 7, 8, 10, 11, 12, 13, 16], "100": [2, 6, 7, 8, 12, 16], "1000": [5, 6, 12, 16], "1000m": 16, "100px": 16, "1024": 12, "1048576": 12, "10px": 14, "11": [6, 12], "111111": 16, "11211": 5, "12": 12, "120": 6, "123": [10, 12], "123218": 7, "123456": 12, "125": 6, "127": [2, 3, 5, 12, 14], "13": [5, 6, 12], "132635": 7, "14": [8, 12, 14], "15": [6, 12, 13, 14], "16": 12, "168": 12, "169": 12, "16px": 8, "172": [6, 12], "174": 6, "178974": 7, "19": [6, 7, 12], "192": [6, 12], "1963": 12, "198": 6, "199": 12, "19t05": 7, "1e100": 6, "1kb": 12, "1l": 6, "1mb": 12, "1pkogiy59xj8co8": 8, "2": [5, 6, 7, 8, 10, 11, 12, 13, 15, 16], "20": [2, 7, 11, 12], "200": [7, 12, 15, 16], "2001": 12, "2002": 12, "2005": 6, "2007": 0, "2008": 12, "2009": 12, "200m": 16, "200x200": 12, "2010": 6, "2012": 6, "2013": 6, "2015": 0, "2018": 6, "2019": 7, "201988": 7, "2020": 1, "20201112": 3, "2021": 7, "2022": 5, "207": 6, "217": 6, "22": 13, "227": 6, "239": 6, "2396": 12, "24": 12, "254": 12, "255": 12, "256": 6, "2616": 12, "28": 12, "2em": 16, "2px": 16, "3": [0, 2, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "30": [2, 6, 8, 12], "301": 15, "309903": 7, "31": [6, 7, 12], "32": [6, 12], "322494": 7, "32768": 6, "33": [6, 12], "34": 7, "3490": 12, "3492": 12, "35": 6, "355181": 7, "3600": [5, 6], "366288": 7, "38": 7, "3em": 16, "4": [2, 5, 6, 7, 8, 12, 14], "40": [2, 10, 16], "400": [5, 15], "404": [5, 13], "405515": 7, "43": 6, "45": [8, 12], "451907": 7, "453020": 7, "456": 12, "466030": 7, "4e": 12, "5": [5, 6, 7, 8, 11, 12, 13, 14, 16], "50": [2, 7], "500": 16, "500m": 16, "512": 6, "53": 12, "54": 8, "559918": 7, "58": 8, "59": 12, "6": [5, 6, 7, 12, 13, 15], "60": [5, 6], "63": [6, 12], "6379": 5, "64": [6, 8, 16], "65": 6, "6to4": 12, "7": [2, 7, 8, 12, 15], "70": 7, "74": 6, "75": 7, "8": [2, 6, 7, 12], "80": [7, 12], "8000": [2, 3, 4, 12, 14], "86": 12, "8601": 7, "8em": [8, 16], "9": [6, 7, 12, 14, 15], "90": [6, 7], "91": 6, "95": 6, "97": 6, "974953": 7, "99": 6, "A": [2, 4, 5, 6, 7, 8, 13, 14, 15, 16, 17], "AND": 6, "AS": 6, "And": [1, 4, 5, 6, 13, 14, 16], "As": [4, 5, 6, 7, 8, 10, 12, 13, 14, 16], "At": [6, 8], "Be": [5, 6, 8], "But": [1, 2, 4, 5, 6, 8, 10, 12, 14, 16], "By": [2, 4, 5, 6, 12, 13, 15], "For": [1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 13, 15, 16], "IF": 6, "IN": 6, "INTO": 6, "IT": 11, "If": [1, 2, 3, 4, 5, 6, 8, 10, 12, 13, 14, 15, 16], "In": [0, 1, 2, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "It": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 13, 16], "Its": [0, 2, 6, 12, 14], "NO": 6, "NOT": [6, 12, 13], "No": [2, 6], "Not": 6, "ON": [6, 12], "OR": [6, 10, 12, 14], "Of": 8, "On": [2, 6, 13, 16], "One": [2, 4, 12, 13], "Or": 12, "That": [4, 6, 15], "The": [0, 2, 8, 10, 11, 13, 15, 17], "Their": [5, 6, 15], "Then": [4, 5, 6, 10, 12, 13, 14, 16], "There": [1, 2, 5, 6, 8, 12, 13, 14, 16], "These": [0, 5, 6, 10, 12, 14], "To": [2, 4, 6, 8, 10, 11, 12, 13, 14, 16], "With": [2, 6, 12, 13, 16], "_": [2, 12, 16], "__": 4, "__file__": [5, 7, 14], "__init__": [2, 4, 5, 6, 7, 14, 15, 16], "__prerequisite__": 5, "__prerequisites__": 5, "__str__": [5, 8, 10], "_action": 10, "_adapt": 6, "_after_delet": 6, "_after_insert": 6, "_after_upd": 6, "_alt": 10, "_and": 12, "_autocomplet": 16, "_autocomplete_search_field": 16, "_before_": 6, "_before_delet": 6, "_before_insert": 6, "_before_upd": 6, "_bgcolor": 10, "_c": 10, "_check": 10, "_class": [5, 10, 12, 16], "_col": 10, "_common_filt": 6, "_count": 6, "_dashboard": [2, 3], "_data": 10, "_db": 6, "_dbname": 6, "_default": [2, 4], "_delet": 6, "_disabl": 10, "_document": [1, 3], "_enable_record_vers": 6, "_extra": 6, "_format": 6, "_href": [5, 8, 10, 12, 14], "_hx": 16, "_id": [6, 10, 12, 16], "_insert": 6, "_listifi": 6, "_method": 10, "_name": [6, 10, 12, 16], "_next_url": 13, "_nonreserv": 6, "_onclick": 12, "_placehold": [12, 16], "_row": 10, "_scaffold": [5, 8, 10, 12, 13, 14, 15, 17], "_search": 16, "_select": [6, 10], "_sesson": 5, "_src": 10, "_style": [12, 16], "_tabl": [6, 12, 16], "_tablenam": 6, "_tag": 13, "_time": 6, "_titl": [12, 16], "_type": [6, 10, 12, 16], "_u": 10, "_updat": 6, "_uri": 6, "_valu": [10, 12, 16], "_xmln": 10, "aaabaaeaaqeaaaeaiaawaaaafgaaacgaaaabaaaaagaaaaeaiaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaapaaaaaa": 8, "ab": [10, 12], "abbrevi": 12, "abc": [10, 12], "abil": 15, "abl": [1, 2, 5, 6, 12], "abort": [4, 6], "about": [0, 7, 13, 14, 15, 16, 17], "abov": [4, 5, 6, 7, 8, 12, 13, 14], "abracadabra": 2, "absent": 2, "absolut": [2, 6, 15], "abspath": 4, "abstract": [5, 15, 17], "accdesc": 6, "accept": [1, 2, 4, 5, 6, 10, 11, 12, 15, 16], "access": [0, 2, 4, 5, 6, 10, 12, 13, 16], "accnum": 6, "accomplish": [5, 6, 13, 15], "accord": [6, 8], "accordingli": 8, "account": [2, 6], "acctyp": 6, "achiev": [5, 6, 15], "acknowledg": 17, "acquir": 6, "across": [6, 8], "act": [6, 10, 12], "action": [4, 5, 6, 10, 12, 15, 16, 17], "action_button": 14, "action_token": [5, 13], "activ": [2, 6, 13], "actual": [2, 5, 6, 8, 14], "ad": [0, 2, 5, 11, 12, 13, 14, 16], "adapt": [13, 16], "adapter_arg": 6, "add": [1, 2, 4, 5, 6, 7, 8, 10, 11, 12, 13, 14, 15, 16], "addit": [2, 4, 5, 6, 7, 8, 12, 14], "addition": 14, "additional_class": 14, "additional_styl": 14, "address": [2, 6, 12, 13], "admin": [0, 6, 15], "administr": 2, "advanc": [2, 13, 14, 17], "advantag": [2, 6, 8, 16], "advis": [6, 14], "affect": 6, "after": [2, 3, 5, 6, 8, 12, 13, 14, 16], "after_connect": 6, "after_delet": 6, "after_insert": 6, "after_upd": 6, "aftermath": 6, "ag": 6, "again": [2, 3, 4, 5, 6, 12, 14, 16], "against": [6, 7, 10, 12, 14], "aggreg": 6, "agnost": 4, "aid": 6, "aim": 0, "ajax": [8, 14, 16], "aka": 1, "alert": [5, 8, 10, 12, 15], "alex": 6, "alfaro": [0, 1], "alg": 12, "algorithm": [5, 12], "alia": [6, 12], "all": [0, 1, 2, 3, 4, 5, 7, 8, 10, 11, 12, 13, 14, 15, 16], "alloc": 12, "allow": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 13, 14, 16], "allowed_act": 13, "allowed_attribut": 10, "allowed_overrid": 12, "allowed_pattern": 7, "allowed_schem": 12, "almost": 5, "along": [2, 4, 10, 12, 16], "alphabet": 12, "alphanumer": 12, "alreadi": [2, 3, 4, 5, 6, 10, 12, 13, 14], "also": [0, 1, 2, 3, 4, 5, 6, 8, 10, 12, 13, 14, 15, 16], "alt": 10, "alter": 6, "altern": [2, 5, 6, 8, 12, 16], "although": [2, 6, 8, 12], "alwai": [0, 2, 4, 5, 6, 8, 12, 16], "am": [12, 16], "amazon": 6, "ambigu": [4, 6], "among": [6, 12], "amount": 6, "an": [0, 1, 2, 3, 5, 8, 10, 12, 13, 14, 15, 16, 17], "analogi": 15, "ancestor": 10, "anchor": 16, "andrew": 1, "angl": 8, "angular": [0, 16], "ani": [1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "annoi": 2, "anonym": [6, 8, 12], "anoth": [4, 5, 8, 11, 12, 13], "anotherpath": 5, "ansi": 6, "answer": 1, "anyhow": 2, "anyobj": 6, "anyth": 4, "anywai": 6, "anywher": [8, 15], "api": [0, 6, 7, 10, 12, 13, 15, 16], "api_vers": 7, "app": [0, 1, 3, 5, 6, 7, 8, 10, 11, 12, 13, 14, 15, 16, 17], "app1": 5, "app1_sess": 5, "app2": 5, "app_fold": 15, "app_nam": [2, 4, 5, 6], "app_watch_handl": 4, "appadmin": [0, 6], "appar": 6, "appear": [6, 12, 14], "append": [5, 6, 10, 12, 14, 16], "append_id": 14, "appl": 12, "appli": [0, 5, 6, 12, 13, 14, 16], "applic": [0, 2, 3, 4, 5, 8, 12, 13, 14, 15, 16], "appnam": [2, 5, 13, 15], "appname_sess": 5, "approach": [6, 15], "appropri": [6, 12], "approv": 13, "apps_fold": 2, "apt": 13, "ar": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13, 14, 15, 16], "arbitrari": [4, 6, 13], "archiv": 6, "archive_db": 6, "archive_nam": 6, "aren": 6, "arg": [1, 2, 6], "argument": [2, 4, 5, 6, 8, 10, 12, 13, 15], "arithmet": 12, "around": [1, 6, 15], "arrai": [10, 16], "arrang": [6, 12], "arriv": [0, 6], "as_ordered_dict": 6, "ascii": 12, "asid": [6, 16], "ask": [2, 5, 6], "assert": 6, "asset": 2, "assign": [6, 8, 12, 13, 15, 16], "assist": 1, "associ": [6, 11, 12, 13], "assum": [2, 5, 6, 7, 11, 12, 15], "async": 16, "asyncio": 17, "attach": [5, 6, 13, 15], "attack": [5, 10], "attempt": [12, 13], "attent": 6, "attr": [12, 14, 16], "attribut": [4, 5, 10, 12, 14, 15, 16], "attributes_plugin": 16, "attributespluginhtmx": 16, "aug": 12, "august": 12, "auth": [0, 2, 4, 6, 8, 10, 16, 17], "auth_group": 13, "auth_plugin": 13, "auth_us": [5, 6, 13], "auth_user_tag_group": [6, 13], "auth_user_tagged_group": 13, "authent": [5, 6, 14, 17], "author": [5, 6, 7, 17], "auto": [6, 14], "auto_import": 6, "auto_process": [14, 16], "autocomplete_queri": 16, "autodelet": 6, "autogener": 6, "automat": [2, 3, 4, 5, 6, 8, 10, 12, 13, 14, 15, 16], "avail": [1, 2, 6, 8, 10, 13, 15, 16], "averag": 6, "avoid": [0, 1, 2, 5, 6, 8, 12], "awai": 6, "awar": 6, "awesom": [8, 14], "axel": 0, "axolotl": 0, "b": [5, 6, 8, 10, 12, 15, 16], "back": [5, 6, 12], "backend": 6, "background": [2, 4, 12, 16], "backport": 6, "backslash": 4, "backup": [2, 6, 12], "backward": [0, 6, 12], "bad_dai": 6, "bail": 6, "banana": 12, "bar": [8, 14], "barrier": 0, "base": [0, 2, 3, 4, 5, 7, 8, 12, 13, 14, 15, 16], "base64": [6, 8, 16], "base_dn": 13, "baseadapt": 6, "bash": 2, "basic": [0, 1, 2, 5, 6, 16, 17], "bat": 2, "batman": [7, 12, 14], "battl": 0, "beaslei": 0, "becaus": [0, 2, 4, 5, 6, 8, 10, 11, 12, 14, 16], "becom": [12, 16], "bed": 11, "been": [0, 2, 5, 6, 8, 12], "befor": [1, 2, 5, 6, 8, 10, 12, 13, 14], "before_delet": 6, "before_insert": 6, "before_upd": 6, "begin": [8, 12, 13, 14], "beginn": 2, "behav": [6, 14], "behavior": [4, 6, 10, 12, 15, 16], "behaviour": [2, 6, 14], "being": [1, 5, 6, 7, 8, 12, 16], "believ": [0, 5], "belong": [13, 15], "below": [5, 6, 7, 12, 14], "benefit": [6, 16], "best": [1, 2, 5, 6, 11, 14], "better": [0, 1, 2, 4, 6, 14, 15, 16], "between": [5, 6, 10, 12, 15], "beyond": 12, "bgcolor": 10, "big": [6, 15], "bigint": 6, "bigint_id": 6, "bin": [1, 2], "binari": 6, "bind": 16, "birthplac": 6, "bit": 12, "bitbucket": 1, "black": [8, 12], "blank": [12, 14], "blink": 16, "blob": 6, "block": [10, 13, 16], "blockquot": 10, "blog": [1, 6, 10], "blog_post": 6, "blue": [4, 6, 12, 15], "bmp": 12, "boat": 6, "bob": 6, "bodi": [4, 8, 13, 14, 16], "boilerpl": 5, "bold": 10, "book": [1, 6], "boolean": [6, 14], "boost": [6, 8], "bootstrap": 14, "border": 16, "born": 6, "botaro": 0, "both": [1, 2, 4, 5, 6, 8, 12, 15], "bottl": [0, 4, 5, 8, 15, 16], "bottle_app": 2, "bottlepi": [4, 5], "bottom": 12, "boundari": 12, "box": [0, 6, 12], "br": [8, 10], "bracket": [0, 8, 12], "branch": [1, 2], "break": [2, 6, 12], "breez": 1, "briefli": 2, "broke": 0, "broken": [0, 12], "brows": [2, 3, 14, 16], "browser": [1, 2, 3, 5, 7, 8, 14, 16], "bruce": [7, 14], "bsd": 1, "buffer": 6, "bug": [1, 3, 6], "build": [1, 2, 4, 5, 6, 10, 12, 14, 16], "builder": 16, "built": [0, 1, 4, 6, 8, 12, 14, 16, 17], "bulk_insert": 6, "bulma": [12, 14, 16], "bunch": 2, "buse": 16, "button": [3, 4, 5, 10, 12, 16, 17], "bypass": [12, 13, 14], "byte": [6, 12], "bytecod": 8, "c": [1, 2, 3, 5, 6, 8, 10, 12, 15], "ca": 12, "cach": [0, 2, 4, 12, 17], "cache_db_select": 6, "calcul": 6, "calendar": 14, "call": [0, 1, 4, 5, 6, 7, 8, 10, 11, 12, 13, 14, 16], "callabl": [10, 12], "callback": [12, 13, 16], "callback_url": 13, "can": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13, 14, 15, 16], "cancel": [12, 16], "cancel_attr": 16, "cane": [11, 16], "cani": [11, 16], "cannot": [2, 5, 6, 8, 10, 12, 16], "capabl": [0, 14, 16], "capit": 16, "caputur": 16, "car": 6, "card": 6, "care": [5, 6, 8, 15, 16], "carl": 6, "carri": 15, "carrol": 0, "cart": 5, "case": [0, 1, 2, 3, 4, 5, 8, 10, 12, 13, 14, 15, 16], "case_sensit": 6, "cassio": 0, "catch": 6, "caus": [6, 12], "caveat": [6, 8, 15, 17], "cd": 2, "cdnj": [8, 14], "celeri": 17, "center": [5, 8], "centuri": 12, "ceo": [7, 14], "certain": [6, 8, 12, 14], "certif": 2, "cf": 4, "cgi": 12, "chair": 6, "challeng": 13, "chang": [0, 1, 2, 3, 5, 6, 7, 8, 11, 12, 13, 14, 15, 16, 17], "change_email": 13, "change_password": [8, 13], "changed_fil": 4, "channel": 1, "chapter": [1, 2, 3, 4, 5, 6, 8, 10, 12, 14, 15], "char": [6, 13], "charact": [4, 6, 10, 12], "charg": [2, 15], "chat": 1, "check": [1, 2, 3, 4, 5, 6, 8, 10, 12, 13, 14, 15], "check_": 16, "check_reserv": 6, "checkbox": [8, 10], "checkboxwidget": 12, "cherri": 12, "chicago": 6, "choic": [1, 4, 12, 14], "choos": [1, 12, 13], "choosen": 6, "chose": 4, "chosen": 6, "chrome": [3, 16], "circular": 6, "circumst": 5, "cit0801": 7, "cit0802": 7, "cit1601": 16, "cite": [10, 12], "clark": [7, 14], "clash": 12, "class": [5, 6, 8, 10, 12, 13, 15, 16], "class_inner_except": 16, "class_styl": 14, "claudia": 6, "claus": [6, 8], "clean": [1, 10], "cleaner": 5, "cleanup": 0, "clear": [6, 12], "clearli": [6, 16], "clever": 12, "cli": [1, 2], "click": [3, 6, 10, 12, 14, 16], "clickabl": 14, "client": [0, 7, 12, 13, 16], "client_id": 13, "client_ip": 5, "client_secret": 13, "clientsid": 16, "clock": 12, "clone": [2, 4, 6, 16], "close": [5, 6, 8, 10], "cloudflar": [8, 14], "cmd": 2, "cn": 13, "co": [6, 12], "coa": 6, "code": [1, 2, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "col": 10, "collaps": [7, 10], "collat": 6, "collect": [0, 2, 15], "colnam": 6, "colon": 8, "color": [4, 6, 8, 10, 12, 16], "colspan": 10, "column": [6, 17], "com": [0, 1, 3, 4, 8, 10, 13, 14, 16], "combin": [5, 10, 12, 14], "come": [0, 4, 5, 6, 8, 12, 13, 14, 15, 16], "comma": [2, 6, 16], "command": [3, 4, 8, 10, 17], "comment": [6, 10], "commit": [4, 5, 7, 14, 15, 16], "common": [2, 3, 4, 5, 8, 12, 13, 15, 16], "common_filt": 6, "commun": [0, 5, 6], "compact": 6, "compani": 14, "compar": [0, 6, 15], "comparison": [6, 12], "compat": [0, 1, 6, 10, 12], "competitor": 0, "compil": [4, 8, 10, 12], "compiled_css": 4, "complain": 6, "complet": [0, 6, 8, 10, 12, 13, 16], "complex": [1, 2, 4, 5, 6, 8, 10, 13, 15, 16], "compliant": [6, 16], "complic": 5, "compon": [0, 3, 4, 5, 8, 10, 12, 13, 16], "component_1": 16, "compos": [2, 5], "compound": 10, "compress": [3, 4], "compris": 3, "compromis": 0, "comput": [1, 16, 17], "concaten": [6, 10], "conceiv": 6, "concept": [0, 13], "concern": 6, "concurr": [0, 2, 6, 12, 16], "cond": 5, "condit": [6, 8, 12, 17], "condition": 6, "config": [2, 4], "configur": [1, 2, 5, 6, 12, 13, 15, 16], "confirm": [2, 12, 13, 14, 16], "conflict": [0, 2, 4, 6], "confus": 6, "conjunct": 6, "conn": 5, "connect": [3, 4, 5, 12, 15], "connectionpool": 6, "consequ": [6, 12, 16], "consid": [5, 6, 8, 10, 12, 14, 15], "consider": 6, "consist": [5, 6, 8, 14, 15], "consol": [2, 10, 13, 16], "constant": 12, "constrain": 15, "constraint": [0, 6], "construct": [4, 6], "constructor": [5, 10, 13, 17], "consult": 6, "contain": [0, 2, 3, 4, 5, 7, 8, 10, 11, 12, 13, 14, 15, 16], "contect": 8, "content": [2, 4, 5, 6, 8, 10, 12, 14, 15, 16], "context": [3, 5, 6, 8], "contextlib": 6, "continu": [6, 8, 16], "contribut": [0, 17], "control": [2, 4, 5, 8, 10, 12, 13, 14, 15, 16], "conveni": [6, 17], "convent": [4, 6, 8, 12, 15], "convers": [12, 17], "convert": [1, 4, 6, 10, 12], "cooki": [0, 4, 6, 12, 16], "copi": [1, 2, 3, 8, 10, 14, 17], "copyfileobj": 6, "core": [1, 2, 4, 5], "corei": 1, "corner": 14, "cornerston": 0, "correct": [1, 6, 13], "correctli": 12, "correspond": [2, 3, 4, 6, 10, 11, 13, 14, 15], "corrupt": 6, "couchdb": 6, "couchdbadapt": 6, "could": [1, 2, 4, 6, 8, 10, 12, 13, 15], "count": [5, 7, 13, 14, 16], "counter": [5, 6, 16], "counterpart": 4, "coupl": [14, 16], "cours": [1, 8], "cp": 2, "creat": [0, 1, 2, 3, 5, 6, 8, 10, 12, 13, 14, 15, 16, 17], "create_form": 12, "create_th": 12, "created_bi": 6, "created_on": 6, "creation": [2, 6], "creativ": [12, 13], "credential_decod": 6, "criteria": [6, 12], "critic": 2, "cross": [5, 6, 10], "crossorigin": 8, "crt": [2, 6], "crud": [3, 12, 16], "cruz": 1, "crypt": 2, "csrf": [5, 12], "csrf_protect": 12, "csrf_session": 12, "css": [1, 4, 5, 8, 10, 12, 13, 14, 16], "csv": 15, "ct": 5, "ctrl": [2, 3], "cubrid": 6, "cubridadapt": 6, "cubriddb": 6, "current": [2, 5, 6, 8, 10, 13, 14, 15, 16], "current_record": 6, "cursor": [6, 16], "curt": 6, "custom": [0, 2, 4, 8, 15, 16, 17], "custom_check": 12, "custom_qualifi": 6, "customiz": [0, 12, 14], "cx_oracl": 6, "cyclic": 6, "czech": 11, "d": [2, 7, 10, 12], "daemon": [2, 16], "dai": 12, "dal": [2, 4, 7, 12, 14, 16, 17], "dan": 0, "dancer": 13, "danger": 15, "dash": 12, "dashboard": [0, 2, 4, 6, 8, 12, 16, 17], "dashboard_mod": 2, "data": [0, 4, 5, 7, 8, 10, 12, 13, 14, 15, 16, 17], "data_label": 16, "databas": [0, 1, 3, 4, 7, 13, 14, 15, 16, 17], "datalist": 16, "date": [2, 6, 14], "datetim": [4, 5, 6, 7, 12, 16], "datetimewidget": 12, "daunt": 1, "db": [2, 3, 4, 5, 7, 10, 12, 13, 14, 15, 16], "db1": 6, "db2": 6, "db2adapt": 6, "db2ibm": 6, "db2pyodbc": 6, "db_a": 6, "db_b": 6, "db_codec": 6, "db_folder": [5, 7, 14], "db_name": 6, "db_uid": 6, "dbadmin": 4, "dbio": 12, "dbo": 6, "dbset": 12, "dbstore": 5, "dc": 13, "dd": 12, "de": [0, 1, 6, 11], "deal": [1, 6, 16], "dealfaro": 0, "debounc": 16, "debug": [2, 4, 5, 6, 8], "debugg": [1, 15], "decid": [6, 12, 14], "decim": [4, 6, 12], "declar": [0, 4, 5, 6], "decod": 6, "decode_credenti": 6, "decor": [1, 4, 6, 15, 17], "dedic": [1, 4, 5, 10, 15], "def": [4, 5, 6, 7, 10, 12, 13, 14, 15, 16], "default": [0, 2, 3, 4, 5, 7, 10, 12, 13, 14, 15, 16], "defer": [6, 16], "defin": [2, 4, 5, 8, 12, 13, 14, 15, 16], "define_t": [5, 7, 12, 13, 14, 15], "definit": [6, 7, 12, 14, 15], "degre": 6, "del": [6, 10], "delai": [6, 16], "deleg": 6, "delet": [2, 4, 7, 12, 14, 16], "delete_record": 6, "delimit": [0, 5, 6, 8, 15], "delta": 16, "demand": 6, "demo": [1, 2, 16], "deni": 7, "denorm": [6, 7], "depend": [0, 2, 3, 4, 5, 6, 8, 12, 14, 15], "deploi": 2, "deploy": 1, "deployment_tool": 2, "deprec": [6, 12, 16], "deriv": [6, 12], "desc": 14, "descend": 10, "describ": [2, 3, 4, 5, 6, 12], "descript": [6, 7, 12, 13, 14], "design": [0, 4, 6, 8, 13, 16, 17], "desir": [5, 8, 12, 13], "dest": [4, 6], "detail": [0, 1, 2, 5, 6, 7, 8, 10, 12, 14, 16], "detail_field": 12, "determin": [4, 5, 6, 8, 11, 12, 13, 14], "determinist": 5, "dev": 13, "develop": [0, 1, 4, 5, 6, 13, 14, 15, 16], "development_tool": 2, "devic": 8, "di": [0, 5], "diagram": 7, "dialect": 6, "dict": [4, 5, 6, 11, 12, 14, 15, 16], "dictionari": [4, 5, 10, 11, 15], "did": [0, 4, 6, 16], "differ": [0, 2, 5, 6, 8, 11, 12, 13, 14, 15, 16], "difficult": [2, 16], "digit": [4, 6, 12, 13], "dimens": 12, "dir": [2, 12, 16], "direct": [2, 5, 6, 8, 12], "directli": [1, 2, 4, 6, 7, 8, 10, 12, 13, 14, 16], "directori": 13, "dirnam": [5, 7, 14], "disabl": [6, 7, 10, 12, 14], "disallow": [6, 12], "discard": 6, "discord_client_id": 13, "discord_client_secret": 13, "discount": 6, "discounted_tot": 6, "discounted_total_pric": 6, "discounted_unit_pric": 6, "discov": 11, "discoveri": 2, "discrimin": 13, "discuss": [1, 3, 6, 8, 10, 12], "disk": [5, 6], "dismiss": [5, 15], "displai": [3, 4, 5, 6, 8, 10, 12, 13, 14, 16], "distinct": [8, 12], "distributed_transaction_commit": 6, "ditch": 0, "div": [4, 5, 8, 12, 15, 16], "divis": [8, 10, 12], "divmod": 6, "django": [0, 1, 15], "do": [1, 2, 4, 5, 6, 8, 10, 12, 13, 14, 15, 16], "do_connect": 6, "doc": 1, "dockerfil": 2, "doctor": 6, "doctyp": [8, 14], "document": [3, 5, 6, 8, 10, 12, 16], "doe": [0, 2, 5, 6, 8, 12, 13, 14, 15, 16], "doesn": [5, 6, 14], "dog": [11, 12, 16], "doh": 12, "dom": [8, 17], "domain": [12, 13], "don": [1, 2, 3, 4, 6, 8, 12, 13, 14], "done": [2, 6, 8, 12, 14, 15], "dot": 12, "doubl": [2, 6, 8], "doubt": 14, "down": [6, 12, 16], "downfal": 14, "download": [2, 12], "download_url": 12, "downsid": [6, 15], "dramat": 6, "driven": 0, "driver": 6, "driver_arg": 6, "drop": 12, "dropdown": [12, 14, 16], "dsn": 6, "due": [6, 7, 12], "dummi": [6, 8], "dummyrespons": 8, "dump": [5, 6, 16], "dumpfil": 6, "duplic": 6, "durabl": 7, "dure": 14, "dynam": [6, 7, 8, 10, 12, 13, 17], "e": [2, 4, 5, 6, 7, 8, 10, 12, 13, 16], "each": [2, 4, 5, 6, 7, 8, 10, 11, 12, 13, 14, 15, 16], "earli": [5, 6], "earlier": 16, "easi": [0, 5, 6, 8, 10, 12], "easier": [0, 6, 7, 8], "easiest": [6, 13], "easili": [4, 5, 6, 8, 10, 12, 14], "ebook": 1, "echo": 4, "ecosystem": 16, "edg": 16, "edit": [0, 2, 3, 4, 8, 10, 12, 13, 14, 15, 16], "edit_sidecar": 16, "editor": [1, 8], "educ": 2, "effect": [3, 6, 12], "effici": [0, 1, 5, 6, 15], "effort": 1, "efg": 10, "either": [6, 10, 12], "el": 10, "element": [6, 8, 10, 12, 14, 16], "els": [2, 6, 12, 13, 14, 15, 16], "elt": 16, "emac": 8, "email": [2, 5, 8, 12, 13, 15], "emails_onvalid": 12, "emb": 10, "embed": [8, 12], "ember": 12, "emerg": 16, "emphas": 10, "employe": [5, 14], "empti": [2, 4, 6, 12, 16], "empty_regex": 12, "en": [5, 7], "enabl": [1, 5, 6, 7, 10, 13, 15, 16], "enable_record_vers": 6, "encapsul": [8, 10], "enclos": [6, 8], "encod": [5, 6, 12, 16], "encrypt": [0, 2, 5], "end": [4, 6, 8, 10, 12, 13, 14, 15, 16], "endpoint": [13, 16], "enforc": [5, 6, 12, 15], "engin": [6, 12], "english": 5, "enhanc": 6, "enough": [12, 13, 14], "enqueu": 16, "enqueue_run": 16, "ensur": [6, 12], "enter": [4, 5, 10, 12, 13], "enterpris": [1, 13], "entir": [6, 8, 15, 16], "entiti": 6, "entity_quot": 6, "entri": [0, 6, 7, 11, 12, 14, 15], "entropi": 12, "env": [1, 15], "envelop": 16, "environ": [0, 1, 4, 5, 6, 15], "epub": 1, "eq": 7, "equal": [6, 7, 10, 13, 16], "equip": 5, "equival": [4, 5, 6, 10, 12, 15], "errlog": 5, "error": [1, 2, 3, 5, 6, 7, 8, 10, 12, 15, 16], "error_messag": 12, "errorlog": 2, "escap": [6, 8, 10], "especi": [0, 2, 5, 6, 12, 13], "esprima": 4, "establish": [6, 15], "etc": [4, 5, 6, 7, 11, 15], "eval": 16, "evalu": [5, 6, 7, 8, 12, 16], "even": [1, 4, 5, 6, 8, 10, 12, 14, 15, 16], "event": [2, 6, 16], "event_tim": 6, "eventu": 5, "ever": 6, "everi": [0, 2, 4, 5, 6, 13, 14, 15, 16], "everyon": [0, 1], "everyth": [2, 15, 16], "evolut": 0, "ex": 2, "exact": 15, "exactli": [5, 6, 8], "exampl": [1, 2, 3, 4, 5, 6, 8, 10, 11, 13, 17], "excel": [1, 14], "except": [2, 4, 5, 6, 10, 12, 13, 16], "excerpt": 8, "exclud": 12, "exclus": [0, 5, 6, 12, 13], "execut": [1, 2, 5, 6, 8, 10, 12, 15, 16], "exercis": [5, 13], "exist": [2, 5, 6, 12, 13, 14, 16], "exit": [2, 5], "exp": [4, 6], "expand": [1, 3], "expect": [2, 4, 5, 6, 10, 12, 15], "experi": [1, 12, 13], "experienc": 0, "experiment": [2, 5], "expir": [5, 6], "explain": [4, 5, 6, 12, 14], "explanatori": 6, "explicit": [0, 2, 4, 5, 6, 12, 13, 16], "explicitli": [0, 2, 5, 6, 8, 10, 12], "explict": 6, "explor": 3, "export": 17, "export_to_csv_fil": 6, "expos": [0, 3, 4, 5, 6, 7, 13], "express": [4, 7, 8, 10, 11, 12, 14, 16], "extend": [0, 5, 6, 12, 13, 15, 16], "extens": [3, 6, 12, 15], "extern": [2, 6], "extra": [5, 6, 12, 13], "extra_field": 5, "extract": [6, 12, 16], "f": [6, 13, 14, 15, 16], "fa": 14, "face": [1, 6], "facebook": [0, 5], "facilit": 4, "fact": [4, 5, 6, 15], "factori": [6, 10], "fail": [3, 6, 8, 12, 16], "failur": [4, 12, 16], "fake": 6, "fake_migrate_al": 6, "fall": 12, "fals": [2, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "famou": 1, "fanci": 16, "far": [6, 16], "fast": [0, 4, 16], "faster": [0, 6, 8, 15], "father": 6, "father_id": 6, "favorite_color": 5, "fb00": 12, "fdb": 6, "fe80": 12, "feasibl": [2, 12], "featur": [0, 2, 4, 7, 8, 15, 17], "februari": 5, "feed": 6, "fetch": [15, 16], "fetchon": 6, "few": [6, 8, 13, 16], "ff00": 12, "fid": 6, "field": [2, 4, 5, 7, 10, 13, 15, 16, 17], "field1": 6, "field2": 6, "field3": 6, "field_id": 14, "fieldnam": [6, 16], "fieldstorag": 12, "fifth": 14, "file": [0, 1, 2, 3, 5, 6, 8, 10, 13, 14, 16, 17], "file_cont": [6, 16], "file_nam": [6, 16], "file_path": 15, "filenam": [2, 4, 5, 6, 12], "filep": 4, "filepath": 4, "filesystem": [0, 4, 5, 6], "fileuploadwidget": 12, "fill": [12, 16], "filter": [2, 4, 7, 12, 13], "filter_in": 12, "filter_out": 14, "final": [1, 2, 4, 6, 11, 14], "find": [1, 2, 4, 8, 11, 12, 13, 14, 16], "find_by_tag": 13, "find_match": 11, "findal": 12, "fine": [2, 13, 14], "fire": 6, "firebird": 6, "firebird_embed": 6, "firebirdadapt": 6, "firebirdembed": 6, "firebirdembeddedadapt": 6, "firefox": [3, 16], "firfox": 16, "first": [0, 3, 5, 7, 8, 10, 12, 13, 14, 15, 16, 17], "first_nam": [4, 5, 13, 14], "first_onli": 10, "first_row": 6, "first_row_dict": 6, "fist": 12, "fit": 12, "five": 6, "fix": [5, 15], "fixtur": [0, 2, 4, 6, 10, 13, 15, 17], "fk_field": 16, "fk_tabl": 16, "fkdaog": 8, "flag": 12, "flash": [8, 12, 16, 17], "flask": [0, 15], "flexibl": [0, 6, 13, 14, 16], "flight": 7, "float": [4, 12], "flow": 13, "fn": 2, "focu": 16, "fold": 6, "folder": [1, 2, 3, 4, 5, 7, 11, 12, 14, 15], "follow": [1, 2, 4, 5, 6, 7, 8, 10, 11, 12, 13, 14, 15, 16], "font": [8, 12, 14], "foo": 14, "foot": 13, "footer": [8, 10], "forbid": 12, "forbidden": 12, "forc": [2, 6, 12, 13], "foreground": 12, "foreign": [1, 14], "foreign_key_check": 6, "forgeri": 5, "forget": [6, 14], "form": [0, 5, 6, 7, 11, 13, 14, 17], "form_bas": 12, "form_custom_widget": 12, "form_exampl": 12, "form_minim": 12, "form_nam": 12, "form_widget": 12, "format": [4, 5, 7, 10, 11, 13, 14], "formatt": 16, "formdata": 7, "former": 6, "formstyl": [12, 14, 16], "formstylebootstrap4": 12, "formstylebulma": [12, 14, 16], "formstyledefault": [12, 14], "formstylefactori": 16, "forum": 3, "forward": [1, 3], "found": [2, 6, 12], "four": [2, 6], "fourth": 12, "fp": 5, "fr": 11, "framework": [0, 1, 2, 4, 5, 12, 13, 14, 15, 16], "free": [1, 5, 6, 13], "freetext": 16, "frequent": [1, 6, 12], "friendli": [0, 5, 8], "from": [0, 1, 3, 5, 7, 8, 10, 11, 12, 13, 14, 16, 17], "from_address": 13, "front": [0, 8, 12, 16], "frontend": 16, "fsstorag": 5, "ftp": 12, "full": [2, 4, 6, 8, 12, 14, 16], "fulli": [1, 4, 5, 6, 12], "fullnam": 6, "func": [2, 5], "function": [0, 2, 4, 5, 6, 7, 10, 14, 15, 16], "functool": 16, "furnitur": 5, "further": 13, "futur": [5, 15, 16], "g": [1, 2, 6, 10, 12], "gain": 2, "gather": 14, "gavgavian": 1, "gender": 6, "gener": [0, 1, 2, 4, 5, 7, 8, 10, 12, 13, 14, 15, 16], "german": 11, "get": [1, 2, 4, 5, 6, 8, 12, 13, 14, 15, 16, 17], "get_cooki": 16, "get_us": [4, 5, 13, 15], "get_var": [7, 15], "getvalu": 6, "gevent": [1, 2], "geventw": 2, "geventwebsocketserv": 2, "gia": 5, "gib": 6, "gif": 12, "git": [1, 2], "github": [2, 3, 4, 6, 14], "gitlat": 1, "give": [0, 2, 4, 5, 6, 8, 13, 14], "given": [2, 5, 6, 8, 12, 16], "global": [0, 5, 6, 8, 13, 15, 16], "go": [1, 2, 4, 6, 8, 14, 16], "goal": 0, "goe": [6, 12], "good": [2, 3, 12], "googl": [0, 3, 5, 8, 12, 14], "googledatastor": 6, "googledatastoreadapt": 6, "googlemysql": 6, "googlepostgr": 6, "googlesql": 6, "googlesqladapt": 6, "gotcha": 17, "gotta": 8, "granular": 6, "granulari": 12, "graphql": 7, "great": 16, "greater": 7, "greedi": 4, "green": [4, 6, 12, 15], "grid": [0, 17], "grid_class_styl": 14, "grid_tutori": 14, "gridactionbutton": 14, "gridclassstyl": 14, "gridclassstylebulma": 14, "group": [0, 2, 3, 5, 13, 15], "group_nam": [5, 13], "groupbi": 12, "grow": [0, 6, 16], "gt": [7, 10], "guarante": [5, 6, 8, 15, 16], "guid": 2, "guidelin": 13, "gunicorn": 2, "gunicorngev": 2, "gz": 12, "h": [2, 12], "h1": [4, 8], "h2": [8, 12], "ha": [0, 2, 4, 5, 6, 7, 8, 10, 11, 12, 13, 14, 15, 16], "habit": 2, "had": 6, "hamburg": 8, "hand": [2, 6, 16], "handi": 6, "handl": [2, 4, 5, 6, 12, 14, 15, 16], "handler": 4, "hang": 1, "happen": [5, 6], "hard": 15, "hardcod": 5, "has_membership": 13, "hash": [2, 6, 12], "have": [0, 1, 2, 3, 4, 5, 7, 8, 10, 12, 13, 14, 15, 16], "he": 6, "head": [4, 8, 12, 14], "header": [4, 5, 6, 8, 10, 14, 16], "height": [12, 14, 16], "hello": [4, 5, 6, 8, 10, 12, 13, 16], "help": [2, 6, 7, 8, 10, 12, 15, 17], "helper": [0, 4, 5, 6, 8, 12, 14, 15, 17], "henc": [0, 2, 4, 5, 6, 12], "her": 12, "here": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13, 14, 16], "hesit": 6, "hex": 12, "hh": 12, "hi": [6, 12, 16], "hidden": [6, 12, 16], "hidden_div": 16, "hidden_input": 16, "hide": [6, 14], "hierarch": 13, "high": [12, 13], "higher": 6, "highest": 12, "highli": [1, 14], "highlight": [1, 8], "hint": [14, 17], "histor": [0, 6], "histori": 12, "hit": [2, 6], "hmac": 12, "ho": 5, "hold": [6, 16], "home": 8, "host": [1, 2, 5, 12, 13], "hour": 12, "hous": 15, "housekeep": 6, "how": [0, 2, 4, 5, 6, 7, 8, 12, 13, 14, 15, 16, 17], "howev": [6, 8, 10, 12, 14, 16], "href": [8, 10, 13, 14], "hs256": 5, "html": [1, 4, 5, 7, 8, 11, 12, 13, 14, 15, 16], "html5": 8, "htmx": [14, 17], "htmx_form": 16, "htmx_form_demo": 16, "htmx_grid": 16, "htmx_list": 16, "htmxautocompletewidget": 16, "http": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13, 14, 15, 16], "httrespons": 5, "hulk": 12, "hundrand": 16, "hx": 16, "hypertext": 16, "hyphen": 10, "i": [1, 2, 3, 4, 5, 6, 7, 8, 11, 12, 13, 14, 15, 16, 17], "i18n": 11, "ibm_db_dbi": 6, "icon": [8, 14], "id": [0, 1, 2, 3, 5, 7, 8, 10, 12, 13, 14, 15, 16], "id1": 6, "id2": 6, "id_field_nam": 14, "id_valu": 14, "idea": 6, "ident": [6, 7, 15], "identifi": [4, 5, 6, 10, 12], "idn": 12, "ie": 12, "ietf": 12, "ifram": 12, "ignor": [4, 6, 8, 10, 12, 14, 16], "ignore_attribute_plugin": 14, "ignore_common_filt": [6, 12], "ignore_field_cas": 6, "iip": 6, "illustr": [6, 8], "imag": [6, 8, 10, 12], "image_fil": 6, "imagin": [5, 6, 8, 16], "imap": 6, "imapadapt": 6, "imaplib": 6, "img": [4, 12], "immedi": [2, 6, 14], "immens": 0, "implement": [4, 5, 6, 8, 12, 13, 15, 16], "impli": 7, "implic": 5, "implicit": 6, "implicitli": [6, 12], "import": [0, 1, 2, 4, 5, 7, 8, 10, 11, 12, 13, 14, 15, 16, 17], "import_and_sync": 6, "import_from_csv_fil": 6, "impos": 8, "impot": 12, "improv": [12, 13, 14], "includ": [0, 4, 5, 6, 7, 10, 12, 14, 15, 16], "include_action_button_text": 14, "include_path": 4, "inclus": [0, 12], "incom": 2, "incorrect": 8, "increas": 5, "increment": 6, "inde": [0, 5], "indent": 8, "independ": [0, 5, 6, 13], "index": [1, 2, 4, 5, 7, 8, 10, 12, 13, 14, 15, 16, 17], "indic": [4, 6, 12, 15, 16], "individu": [0, 2, 5, 6, 7, 8, 12], "ineffici": [5, 6], "infinit": 6, "info": [2, 4, 5, 6, 13], "inform": [1, 5, 6, 7, 12, 13, 15, 17], "informix": 6, "informixadapt": 6, "informixdb": 6, "informixs": 6, "ingr": 6, "ingredi": 4, "ingresadapt": 6, "ingresdbi": 6, "ingresu": 6, "ingresunicod": 6, "ingresunicodeadapt": 6, "init": 14, "initi": [0, 2, 4, 5, 8, 12], "inject": [6, 8, 12, 17], "inlin": [10, 16], "inner": [5, 8, 16], "input": [2, 4, 5, 6, 8, 12, 16], "insensit": [6, 12], "insert": [3, 5, 7, 8, 12, 13, 14, 16], "insid": [1, 2, 4, 5, 6, 8, 10, 12, 14, 15, 16], "inspector": 8, "inspir": 7, "instal": [0, 1, 3, 4, 5, 6, 13, 16, 17], "instanc": [6, 10, 12, 14, 16], "instanti": [6, 13, 14, 15], "instead": [1, 4, 5, 6, 8, 10, 12, 13, 14, 15, 16], "instruct": [2, 12], "int": [4, 6, 12, 13, 15], "int2ip": 6, "integ": [2, 4, 6, 7, 10, 12, 16], "integr": [0, 1, 8, 16], "intend": [6, 16], "intention": 12, "interact": [0, 5], "interchang": 13, "interfac": [0, 3, 5, 6, 14, 15, 16], "intermedi": 6, "intern": [0, 1, 4, 5, 6, 8, 13, 14], "internation": [0, 4, 5, 12, 15, 17], "interpret": [0, 6, 7, 10], "intersect": 6, "introduc": [0, 8], "introduct": [1, 2, 17], "intuit": 12, "invalid": [2, 5, 6, 12], "invert": [6, 12], "invis": 6, "involv": [6, 8, 14, 15], "io": [2, 6], "ip": [6, 12], "ip2int": 6, "ip_list": 13, "ipaddr": 6, "ipaddress": 13, "iptabl": 2, "ipv4": [6, 12], "ipv4address": 13, "ipv4network": 13, "ipv6": 12, "is_6to4": 12, "is_act": 6, "is_automat": 12, "is_dat": 6, "is_datetim": 6, "is_decimal_in_rang": 6, "is_empty_or": 6, "is_float_in_rang": 6, "is_imperson": 13, "is_in_db": [6, 14], "is_in_set": 6, "is_int_in_rang": 6, "is_json": 6, "is_length": 6, "is_link_loc": 12, "is_localhost": 12, "is_multicast": 12, "is_not_empti": 6, "is_null_or": 14, "is_priv": 12, "is_publ": 6, "is_reserv": 12, "is_rout": 12, "is_teredo": 12, "is_tim": 6, "isdir": [7, 14], "isn": [12, 14], "iso": 7, "isol": 16, "issu": [0, 3, 6], "ital": 10, "italian": [5, 11], "item": [6, 7, 8, 10, 12], "itemize1": 8, "itemize2": 8, "iter": [8, 12], "iterselect": 6, "its": [0, 1, 2, 3, 4, 5, 6, 8, 10, 12, 13, 14, 15, 16], "itself": [2, 6, 12, 16], "iv": 6, "j": [0, 4, 5, 8, 11, 15, 17], "javascript": [1, 4, 7, 10, 16], "jdbc": 6, "jdbcpostgr": 6, "jdbcpostgresqladapt": 6, "jdbcsqlite": 6, "jdbcsqliteadapt": 6, "jetbrain": 1, "jim": [0, 1, 14], "jinja2": 5, "job": [7, 12, 14], "john": [0, 6], "join": [4, 5, 7, 12, 13, 14, 15, 17], "jonathan": 6, "journalist": [7, 14], "journei": 1, "jpeg": 12, "jpg": 12, "jpsteil": 14, "jqueri": [10, 12, 16], "jsl": 16, "json": [0, 1, 2, 4, 5, 6, 7, 11, 12, 15, 16], "jump": 1, "junk": 6, "just": [1, 2, 4, 5, 6, 7, 8, 12, 14, 16], "jwt": 5, "jython": 6, "k": [5, 8, 15], "karg": 10, "kbyte": 5, "keep": [1, 2, 4, 5, 6, 7, 8, 10, 12, 14, 15], "keep_valu": 12, "kei": [2, 4, 5, 7, 10, 11, 12, 13, 17], "keller": 0, "ken": 6, "kent": [7, 14], "kevin": 0, "keycod": 16, "keyup": 16, "keyword": [8, 10], "kfield": 16, "kill": 16, "kind": [0, 4], "kinterbasdb": 6, "know": [1, 2, 5, 6, 8, 14], "knowledg": 1, "known": [6, 8], "known_express": 11, "ktabl": 16, "kwarg": [6, 16], "ky8iq0g4b3cyey6wyhn3yt9pw0xpsrivlkmxe40ptknxrlnz9": 8, "l": [2, 12], "label": [6, 7, 8, 12, 14, 15, 16], "lack": [6, 12, 15], "lambda": [5, 6, 10, 12, 14, 16], "languag": [0, 1, 4, 5, 11, 15, 16, 17], "larg": [6, 12], "larger": 0, "last": [1, 5, 8, 12, 13, 14, 16], "last_insert_id": 6, "last_nam": [5, 13, 14], "last_row": 6, "lastdot": 12, "lastrowid": 6, "later": [1, 2, 4, 5, 6, 8, 10, 12, 13, 14], "latest": [2, 6, 15], "latin1": 6, "latter": [6, 12, 15], "launch": [1, 2], "launcher": 1, "lax": 5, "layer": [5, 15, 17], "layout": [12, 13, 14, 15, 16, 17], "lazi": [2, 4, 15], "lazili": 16, "lazy_t": 6, "lazy_total_pric": 6, "ldap": [0, 5], "ldap_plugin": 13, "ldap_set": 13, "ldapplugin": 13, "lead": 14, "leader": 16, "learn": [1, 6], "least": [1, 2, 6, 12, 15, 16], "leav": [5, 6, 13], "left": [8, 12, 14, 16], "len": [12, 16], "length": [6, 12], "less": [7, 12, 15, 16], "let": [2, 6, 7, 12, 16], "letter": 12, "level": [2, 6, 7, 11, 12, 13], "leverag": 0, "li": [8, 12, 13, 16], "lib": [2, 8, 10, 14], "libldap2": 13, "librari": [0, 2, 4, 6, 11, 12, 13, 15, 16], "libsasl2": 13, "libsass": 4, "licens": 1, "life": 16, "lifespan": 12, "lifetim": 5, "lighter": [6, 15], "like": [0, 1, 2, 3, 4, 5, 7, 8, 10, 11, 12, 13, 14, 15, 16], "limit": [0, 2, 5, 6, 7, 8, 12, 13, 15, 16], "line": [4, 5, 6, 7, 8, 10, 12, 13, 14, 16, 17], "link": [2, 6, 7, 8, 10, 12, 13, 14, 16], "lint": 1, "linux": 2, "list": [0, 1, 2, 4, 5, 7, 8, 10, 12, 13, 14, 16], "list_of_field": 6, "listabl": 6, "listen": 3, "listproperti": 6, "liststringproperti": 6, "listwidget": 12, "littl": [1, 5, 6], "live": 16, "ll": [1, 2, 3, 5, 6, 8, 12, 14, 16], "load": [3, 4, 5, 6, 8, 14, 16], "loazkji": 8, "local": [3, 5, 6, 12, 13, 14, 15], "localhost": [2, 4, 5, 6, 12], "locat": [2, 4, 8, 15], "lock": [5, 6, 16], "log": [2, 3, 4, 5, 6, 8, 10, 13, 15, 16], "logerror": 5, "logfil": 6, "logging_level": 2, "logic": [2, 5, 12, 13, 15, 16], "login": [0, 2, 4, 5, 6, 8, 12, 13, 15, 17], "logo": [0, 8, 10], "logout": [0, 8, 13], "long": [0, 2, 12, 16], "longer": [0, 6], "longtext": 6, "look": [2, 3, 5, 6, 7, 10, 12, 13], "lookup": [5, 7, 12], "loop": [6, 8, 16], "lose": [6, 12], "lost": [1, 5, 6, 15], "lot": [1, 4, 6], "love": 0, "low": 0, "lower": 12, "lowercas": 12, "lowest": 12, "lru": 5, "lt": [2, 10], "luca": [0, 1], "m": [0, 2, 6, 10, 12], "mac": 6, "machin": 6, "macneiln": 2, "maco": 2, "made": [1, 2, 6, 8, 12, 14], "magic": 0, "mai": [2, 4, 5, 6, 8, 10, 12, 14, 15, 16], "mail": [1, 3, 6, 12], "mailto": 12, "main": [0, 1, 2, 4, 6, 8, 14, 15, 16, 17], "maintain": [6, 8, 14, 16], "mainten": 16, "major": 6, "make": [0, 1, 2, 5, 8, 10, 11, 12, 13, 14, 15, 16], "makefil": 2, "man": 16, "manag": [0, 1, 2, 3, 4, 5, 6, 12, 13, 16], "mandatori": [5, 6, 8], "mani": [0, 1, 2, 4, 5, 7, 8, 12, 14, 15, 16], "manipul": 6, "manner": [5, 15], "manual": [2, 3, 4, 6, 10, 13, 14], "map": [2, 4, 6, 10, 11, 12, 15], "map_non": 6, "marco": 6, "margin": [8, 16], "mark": [6, 13], "massimo": [0, 6], "master": [1, 2, 6, 14], "match": [2, 4, 5, 6, 7, 8, 10, 11, 12], "materi": 6, "math": 16, "mathemat": 6, "matter": 15, "max": [11, 12, 16], "max_concurrent_run": 16, "maximum": [5, 6, 12], "maxip": 12, "maxlen": 12, "maxsiz": 12, "mayb": [2, 5], "md5": 12, "me": [10, 12, 14, 16], "mean": [1, 2, 3, 5, 6, 8, 12, 13, 15], "mechan": [0, 5, 6, 8, 10, 13, 15], "meet": 6, "member": [12, 13], "membership": [0, 5, 12, 13, 15], "memcach": [0, 6], "memoiz": 17, "memori": 5, "mention": [5, 13, 16], "menu": [8, 12, 13], "merg": 6, "mess": 1, "messag": [2, 4, 5, 7, 8, 12, 14, 15, 16], "met": 6, "meta": [8, 10], "metadata": 6, "metatag": 10, "method": [4, 5, 7, 8, 10, 12, 13, 14, 16, 17], "mfa": 13, "micah": 0, "microsoft": [1, 13], "mid": 6, "middlewar": 5, "might": [7, 12], "migrat": [15, 17], "migrate_en": 6, "mileston": 1, "min": [8, 12, 14], "min_length": 12, "mind": [1, 4, 6, 7, 8, 12], "minim": [5, 14, 17], "minimalist": [8, 15], "minimalist_pag": 8, "minimum": [6, 12], "minip": 12, "minor": [8, 12, 15], "minsiz": 12, "minut": 12, "miss": [2, 13, 14], "mistak": 2, "mix": 8, "mkdir": [2, 4, 7, 14], "mm": 12, "mode": [2, 4, 5, 12, 13], "model": [0, 3, 4, 7, 10, 12, 14, 15, 16], "modern": [6, 13, 16], "modif": 2, "modifi": [2, 4, 6, 7, 8, 12, 14, 15, 16], "modificaiton": 12, "modified_bi": 6, "modified_on": 6, "modul": [0, 1, 2, 4, 5, 6, 8, 10, 12, 13, 14, 15, 17], "modular": [0, 6, 8, 15], "moment": 6, "mongo": 6, "mongodb": 6, "mongodbadapt": 6, "monkei": 5, "monolith": 0, "monospac": 10, "month": 12, "more": [0, 1, 2, 4, 5, 7, 8, 10, 12, 13, 14, 15, 16], "moreov": [6, 16], "most": [0, 3, 4, 5, 6, 12, 13, 14, 15, 16], "mostli": 5, "mother": 6, "mother_id": 6, "mount": 13, "move": 6, "mssql1": 6, "mssql1n": 6, "mssql2": 6, "mssql2adapt": 6, "mssql3": 6, "mssql3adapt": 6, "mssql3n": 6, "mssql4": 6, "mssql4adapt": 6, "mssql4n": 6, "mssqladapt": 6, "mssqln": 6, "mtabl": 0, "much": [0, 1, 4, 5, 6, 8, 12, 14, 15, 16], "multi": [1, 2, 6, 15], "multicast": 12, "multipl": [0, 1, 2, 4, 6, 8, 10, 11, 12, 15, 16, 17], "multiprocess": 5, "multiselect": 12, "multius": 13, "must": [1, 2, 3, 4, 5, 6, 8, 10, 12, 13, 14, 15], "my": [5, 8, 10, 12, 13, 16], "my_app": 4, "my_id": 16, "my_password_fil": 2, "my_task": 16, "my_url_path": 15, "my_var": [5, 10], "myapp": [2, 4], "myclass": 10, "mycompon": 16, "mycustomwidget": 12, "mydb": 6, "myerror": 5, "myfield": 6, "myfil": 6, "myfixtur": 5, "myfunct": 2, "myidx": 6, "myobj": 6, "myobjnam": 6, "myorder": 6, "myqueri": 6, "myrecord": 6, "mysaltvalu": 12, "myset": 6, "mysidebar": 8, "mysqladapt": 6, "mysqldb": 6, "mysqldv": 6, "mystyl": 12, "mytabl": 6, "myvalu": 6, "myvirtualfield": 6, "myvirtualfields1": 6, "myvirtualfields2": 6, "n": [5, 6, 11, 16], "name": [2, 4, 5, 7, 8, 10, 12, 13, 14, 15, 16], "nameonli": 6, "narrow": 6, "nativ": 6, "native_json": 12, "nav": 8, "navbar": [8, 13], "navig": [8, 14, 16], "ndb": 6, "ne6fz": 8, "necessari": [6, 8, 10], "neck": 16, "need": [0, 1, 2, 4, 5, 6, 8, 10, 12, 13, 14, 15, 16], "neg": [6, 12], "negat": 6, "neither": [6, 12], "nest": [6, 8, 10], "nested_select": 6, "network": [12, 13], "never": [5, 6, 8, 12, 15, 16], "nevertheless": 6, "new": [0, 1, 2, 3, 4, 5, 7, 8, 10, 11, 12, 13, 14, 15, 16], "new_app": [8, 10], "new_password": 16, "new_sidecar": 16, "newer": 8, "newli": [4, 6, 11], "newlin": [6, 12], "next": [1, 2, 5, 6, 8, 12, 16], "nginx": 2, "nice": 10, "nicer": 16, "nico": 0, "nid": 6, "no_backslash_escap": 6, "no_tabl": [12, 16], "node": [4, 16], "non": [4, 5, 6, 12, 14, 15], "none": [2, 5, 6, 7, 10, 12, 14, 15, 16], "nor": [2, 6, 12], "normal": [2, 4, 5, 6, 8, 10, 12, 14, 16], "northwind": 1, "nosqladapt": 6, "not_author": 13, "notat": [6, 10], "note": [1, 2, 5, 8, 10, 12, 15, 16], "noth": [2, 5, 6, 12, 16], "notic": [2, 4, 5, 6, 8, 10, 12, 13, 14, 15, 16], "notnul": 6, "notset": 2, "now": [0, 2, 4, 5, 6, 8, 12, 14, 16], "nowadai": 1, "null": [6, 7, 12, 16], "num": 6, "number": [2, 4, 5, 6, 8, 11, 12, 14], "number_work": 2, "numer": [6, 12], "o": [4, 5, 7, 12, 14], "oauth": 13, "oauth2": [0, 5], "oauth2discord": 13, "oauth2facebook": 13, "oauth2googl": 13, "obj": [6, 8], "object": [0, 5, 6, 7, 8, 10, 11, 12, 15, 17], "observ": 6, "obtain": [2, 4, 6, 13, 16], "obviou": [6, 7, 8, 13], "obvious": [6, 12], "occasion": [6, 12], "occur": [2, 6, 8, 12, 16], "odd": [6, 8], "off": [0, 2, 4, 6, 14, 16], "offici": [0, 6, 12, 16], "offset": [6, 7], "often": [4, 6, 13, 16], "ok": [10, 15], "old": [2, 5, 12, 15], "older": 12, "ombott": [0, 4, 15], "omit": 2, "on_delete_act": 6, "on_error": 5, "on_fals": 5, "on_request": 5, "on_success": 5, "onc": [1, 2, 5, 10, 12, 13, 14, 16], "onclick": 16, "ondelet": 6, "one": [0, 2, 3, 4, 5, 7, 8, 11, 12, 13, 14, 16], "ones": [2, 5, 6, 7, 12, 15], "onion": 5, "onkeydown": 16, "onli": [1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "onlin": [1, 6], "onload": 16, "onvalid": 12, "onward": 6, "opac": 16, "open": [1, 2, 3, 4, 5, 6, 10], "oper": [0, 3, 5, 11, 12, 13, 17], "operationalerror": 12, "oppos": [6, 10], "opposit": [5, 6], "oprow": 6, "optim": [4, 6], "optimis": 6, "option": [0, 3, 4, 5, 6, 7, 8, 13, 14, 15, 16, 17], "oracleadapt": 6, "order": [1, 2, 4, 5, 6, 7, 10, 12, 14, 15], "order_item": 6, "orderbi": [12, 13, 14, 16], "ordereddict": 6, "org": [7, 10, 16], "organ": 4, "origin": [6, 8, 10, 11, 12], "other": [0, 1, 2, 4, 5, 7, 8, 10, 11, 13, 14, 15, 16, 17], "other_pag": [12, 16], "otherfield": 6, "othert": 6, "otherwis": [5, 6, 8, 12, 13, 14], "oufil": 6, "our": [0, 1, 2, 4, 5, 6, 10, 12, 16], "out": [0, 1, 2, 6, 8, 16], "outer": [5, 12, 16], "outlin": [4, 5], "output": [1, 2, 4, 5, 6, 7, 8, 10, 12, 16], "output_styl": 4, "outsid": [0, 5, 6, 12, 14, 15, 16], "ov": 6, "over": [6, 8, 14, 16], "overcom": 6, "overhead": 6, "overkil": 13, "overload": 6, "overrid": [4, 6, 8, 10, 13, 14, 15, 16], "override_class": 14, "override_styl": 14, "overview": 17, "overwritten": [5, 15], "own": [4, 5, 6, 8, 12, 13, 14, 15, 16], "owner": [6, 12], "owner_id": 6, "owner_id1": 6, "owner_id2": 6, "ownership": 6, "p": [2, 8, 12], "p10n": 11, "packag": [0, 6, 10], "pad": [8, 15, 16], "page": [1, 5, 6, 10, 12, 13, 14, 15, 16, 17], "page_head": 8, "page_left_menu": 8, "page_script": 8, "pagin": [6, 14], "paint": [4, 12], "pair": [6, 10], "pam": [0, 5], "pam_plugin": 13, "pamplugin": 13, "paragraph": [1, 5, 10, 12, 14], "param": [12, 13, 14, 15, 16], "paramet": [1, 2, 4, 5, 13, 16], "parent": [2, 6, 8, 16], "parenthes": 6, "park": [7, 14], "pars": [4, 5, 6, 11, 12, 13], "parsemodul": 4, "parser": 6, "part": [6, 10, 12, 15], "parti": [0, 5], "partial": [4, 6, 15], "particip": 1, "particular": [0, 1, 6, 12, 14, 15, 16], "particularli": 6, "pass": [2, 4, 5, 6, 8, 10, 12, 13, 14, 15, 16], "passphras": 5, "password": [0, 2, 3, 5, 6, 8, 12, 13, 15, 16], "password_fil": 2, "passwordwidget": 12, "patch": 5, "path": [2, 4, 5, 6, 7, 11, 12, 14, 15, 16], "path_to": 2, "pattern": [4, 7], "paus": 2, "payment": 6, "payrol": 5, "pbkdf2": 12, "pc": 3, "pdf": [1, 12], "pdkdf2": 2, "per": [0, 4, 5, 7, 14], "percent": 6, "percentag": 6, "perfect": 0, "perfectli": 14, "perform": [0, 3, 5, 6, 12, 13, 15], "period": 16, "permiss": [0, 5, 6, 15], "permit": 6, "permitted_tag": 10, "persist": [5, 6, 13], "person": [2, 6, 7, 12, 14], "persons_and_th": 6, "perspect": 0, "pet": 6, "peter": [7, 14], "phase": 6, "philip": 6, "phone": 12, "photograph": [7, 14], "phrase": 6, "physic": 13, "pick": [4, 5, 13], "piec": [0, 5, 6, 8, 12], "pierro": 0, "pip": [0, 1, 6], "pirsch": 0, "piu": 5, "pixel": 12, "place": [1, 5, 6, 8, 12, 14, 16], "placehold": [6, 11, 12, 16], "plai": [0, 16], "plain": 6, "plan": [1, 16], "platform": [0, 1, 17], "pleas": [5, 6], "plu": [6, 8, 13, 14], "plugin": [4, 5, 12, 14, 16], "plural": [0, 4, 5, 14, 15, 16, 17], "pm": 12, "png": [10, 12], "point": [2, 3, 4, 5, 6, 7, 8, 12, 14, 15], "pointer": 16, "pointless": 6, "polici": [0, 17], "pollut": 5, "pool": [4, 5], "pool_connect": 6, "pool_siz": [5, 6], "poor": 16, "pop": 16, "popul": 6, "popular": [0, 6], "port": [0, 2, 3, 5, 6, 15], "portabl": 6, "portion": 14, "posit": [5, 10], "possibl": [4, 5, 6, 8, 12, 14, 15, 16], "possibli": 6, "post": [4, 6, 7, 10, 12, 13, 14, 15, 16], "post_action_button": 14, "post_text": 6, "post_var": [7, 15], "post_writ": 7, "postel": 11, "postel\u00ed": 11, "postfix": 15, "postgr": 6, "postgreboolean": 6, "postgrenew": 6, "postgrepsyco": 6, "postgrepsycoboolean": 6, "postgrepsyconew": 6, "postgres2": 6, "postgres3": 6, "postgres_nonreserv": 6, "postgresql": [2, 6], "postgresqladapt": 6, "postprocess": 15, "potenti": 2, "power": [2, 6, 7, 13, 15, 16], "pprint": 6, "pr": 1, "practic": [0, 6, 8, 12, 15, 17], "pre": [2, 4, 5, 6, 14], "pre_action_button": 14, "precaut": 2, "preced": [5, 6, 7, 8, 12], "preciou": 14, "predefin": [8, 12, 16], "predetermin": 15, "prefer": [2, 5, 6, 10, 16], "prefix": [2, 4, 6, 7, 8, 12, 15], "preliminari": 1, "prepend": [4, 7, 12, 15, 16], "prepend_schem": 12, "preprocess": 15, "prerequisit": [5, 17], "presenc": [5, 6], "present": [2, 6, 8, 12, 13], "preserv": [0, 5], "press": [3, 4, 14], "pretti": [4, 6, 15], "prevent": [2, 5, 6, 8, 10, 12, 16], "previou": [2, 5, 6, 8, 10, 12, 16], "previous": [5, 6, 12], "price": 6, "prima": 5, "primari": [8, 13], "primarili": 14, "prime": 12, "print": [4, 6, 10, 11, 13, 15, 16], "privat": [5, 12], "probabl": [4, 12], "problem": [0, 1, 6, 8, 13, 14, 16], "procedur": 17, "process": [2, 4, 5, 6, 8, 12, 13, 14, 15, 16], "produc": [0, 2, 5, 6, 8, 10, 12, 13], "product": [2, 4, 6, 16], "product_record": 16, "profil": [0, 8, 13, 15], "program": [1, 2, 3, 6, 8, 10, 12, 16], "programmat": [6, 10], "project": [0, 2, 4, 5, 6], "project_nam": 2, "prompt": [2, 4, 6], "proper": [5, 6, 14], "properli": 4, "properti": [6, 12], "protocol": 3, "prototyp": 16, "provid": [0, 2, 3, 4, 5, 6, 8, 10, 12, 13, 14, 15, 16], "prudent": 6, "pseudo": 6, "psycopg2": 6, "public": 6, "publish": 4, "pull": [1, 6], "punycod": 12, "pure": 6, "purpos": [0, 5, 6, 10, 12, 13, 15], "put": [4, 5, 7, 12, 16], "put_writ": 7, "pwd": 6, "py": [1, 2, 4, 5, 6, 7, 10, 11, 12, 13, 14, 15, 16], "py4web": [2, 3, 4, 5, 7, 8, 10, 12, 13, 14], "py4web_filesystem": 6, "py4web_wsgi": 2, "pyc": 8, "pydal": [0, 2, 3, 5, 6, 7, 12, 13, 14, 15, 16], "pyfilesystem": 6, "pymongo": 6, "pymysql": 6, "pyodbc": 6, "pypi": 2, "pypyodbc": 6, "pysqlite2": 6, "pytd": 6, "python": [0, 2, 4, 5, 6, 8, 10, 11, 12, 13, 14, 15, 16], "python2": [2, 15], "python3": [1, 2], "pyweb": 15, "q": [2, 6, 14], "qualifi": 6, "quantiti": 6, "queri": [4, 5, 7, 10, 12, 13, 14, 15, 16], "query1": 6, "query2": 6, "queryselector": 16, "queryselectoral": 16, "querystr": 14, "question": [1, 2, 6], "quick": [1, 12], "quickli": [2, 12, 14], "quiet": 2, "quirk": 5, "quit": [1, 2, 5, 7, 8, 12, 14], "quot": [2, 10], "quote_minim": 6, "quote_nonnumer": 6, "quotechar": 6, "r": [2, 6, 12], "race": 12, "radio": [10, 12], "radiowidget": 12, "radiu": 16, "rais": [5, 6, 12, 13, 15], "ram": [5, 6], "randint": [8, 13], "random": [6, 8, 12, 13, 16], "rang": [4, 6, 8, 13, 15], "rapid": [0, 16], "rare": 6, "rather": [6, 8, 10, 12, 16], "raw": 17, "rb": 6, "re": [0, 1, 2, 4, 5, 6, 8, 10, 12, 13, 14, 15, 16], "reach": 2, "react": 16, "reactiv": 16, "read": [1, 4, 5, 6, 7, 14, 16], "readabl": [5, 6, 7, 14, 15], "readi": [2, 6], "readm": [1, 12], "readonli": [2, 12, 16], "real": [2, 4, 7, 8, 12], "real_ident": [6, 7], "realiz": 6, "realli": [1, 4, 6], "reap": 16, "reason": [2, 5, 6, 7, 14, 15], "reassembl": 0, "rebuild": 6, "rebuilt": 6, "rec_id": 7, "recal": 8, "receiv": 6, "recent": [3, 5, 6, 12, 14], "recereiv": 16, "recip": 2, "recogn": [4, 6], "recommand": 16, "recommend": [1, 5, 6, 12], "record": [7, 12, 13, 14, 15, 16], "record_id": [7, 16], "recov": [6, 12], "recurr": 6, "recurs": 8, "recycl": 6, "red": [3, 4, 6, 8, 10, 12], "redefinit": 6, "redesign": 0, "redi": 0, "redirect": [4, 5, 12, 13, 14, 16], "reduc": [0, 5, 16], "redund": 6, "ref": [10, 12], "refer": [1, 5, 7, 8, 12, 16], "referenc": [6, 7, 10], "referenced_bi": 7, "reflect": [1, 6], "refresh": 14, "regex": [7, 10, 12], "regexlib": 12, "regist": [0, 5, 6, 8, 13, 15, 16], "register_plugin": 13, "register_task": 16, "register_vue_compon": 16, "registr": [4, 12], "registration_stamp": 12, "regular": [0, 2, 4, 6, 7, 8, 11, 12, 14, 15, 16], "reimplement": 16, "reinstal": 2, "reinstat": 6, "reject": 12, "rel": [4, 6, 8, 14, 15], "relat": [5, 17], "relationship": 6, "releas": [0, 2], "relev": 6, "reli": [0, 4, 6], "reliabl": 1, "reload": [2, 3, 4, 5, 12, 16], "remain": [0, 6, 12], "rememb": [3, 5, 6, 12], "remote_addr": [5, 13], "remov": [0, 2, 4, 6, 10, 12, 13], "renam": [1, 7], "render": [5, 7, 8, 10, 12, 14, 15, 16], "renoir": 8, "reopen": 5, "repackag": 0, "repeat": [6, 12], "replac": [0, 2, 6, 8, 10, 12, 14, 16], "replic": [1, 5], "report": [4, 8], "repositori": [1, 2, 3], "repr_row": 6, "repres": [0, 8, 12], "represent": 10, "representational_state_transf": 7, "representing_field": 12, "request": [0, 1, 2, 5, 6, 7, 12, 13, 14, 15, 16], "request_reset_password": 13, "requir": [0, 1, 2, 4, 5, 6, 7, 12, 13, 14, 15, 16], "requires_": 15, "requires_login": 15, "requires_membership": 5, "rescu": 6, "reserv": 12, "reset": 6, "reset_password": 13, "resourc": [6, 13, 17], "respect": [6, 10, 12, 14], "respons": [4, 5, 6, 8, 14, 15, 16, 17], "rest": [7, 13], "restapi": [0, 3, 17], "restart": [2, 4, 5, 6, 14], "restor": 6, "restrict": [5, 6, 7, 12, 16], "restructuredtext": 1, "result": [1, 6, 7, 8, 12, 14, 16], "resultset": 6, "ret": 6, "retain": 6, "retri": 6, "retriev": [4, 5, 6, 15, 16], "return": [5, 6, 7, 10, 12, 13, 14, 16], "reus": 6, "revers": [5, 6], "revert": 6, "rewrit": 6, "rewritten": 6, "rfc": 12, "rid": 6, "ride": 8, "right": [1, 2, 3, 5, 6, 8], "road": 16, "robust": 16, "rocket": 15, "rocket3": [2, 15], "rocketserv": 2, "role": [2, 5, 10], "roll": [5, 6], "rollback": [4, 16], "root": [6, 8, 13, 14], "roughli": 6, "rout": [0, 2, 3, 5, 14, 15, 16], "rover": 6, "row": [8, 10, 12, 14, 15, 16], "rows1": 6, "rows2": 6, "rows3": 6, "rows_list": 6, "rows_per_pag": 14, "rpc": 6, "rst": 1, "rule": [4, 5, 8, 12, 14], "run": [1, 3, 4, 5, 8, 13, 15, 16, 17], "run_in_transact": 6, "runtim": [2, 6], "s3": 6, "s_": [12, 16], "s_autocomplet": 16, "s_autocomplete_result": 16, "s_down_kei": 16, "s_search": 16, "safari": 16, "safe": [1, 5, 6, 10, 14, 15], "safer": [6, 12, 14], "safeti": [2, 16], "sai": [6, 13], "said": 7, "sake": 6, "salt": 12, "sam": 0, "same": [0, 2, 4, 5, 6, 7, 8, 10, 11, 12, 13, 14, 15, 16], "same_sit": 5, "saml": 13, "saml2": 0, "sampl": 13, "sandbox": 16, "sane": 4, "sanit": [5, 10, 12, 15], "santa": 1, "sap": 6, "sapdb": 6, "sapdbadapt": 6, "sass": 4, "sass_compil": 4, "save": [1, 2, 4, 5, 6, 11, 12], "scaffold": [2, 4, 5, 6, 8, 12, 15, 16], "scaffold_zip": 2, "scale": [5, 8], "scan": 6, "scare": 1, "schafer": 1, "schduler": 16, "schedul": 17, "scheduled_for": 16, "schema": 6, "scheme": 12, "school": 13, "scope": 4, "score": 16, "score_input": 16, "scratch": 17, "script": [2, 5, 8, 12, 16], "sdk": 2, "se": 6, "seamlessli": 8, "search": [0, 1, 2, 3, 6, 10, 12, 13, 17], "search_button_text": 14, "search_form": 14, "search_queri": 14, "search_text": 14, "search_valu": 16, "searchabl": 6, "sec": 16, "second": [5, 10, 12, 13, 15], "secret": [5, 13], "section": [2, 4, 6, 8, 12, 13], "secur": [0, 2, 7, 13], "see": [0, 1, 2, 3, 4, 5, 6, 8, 10, 12, 13, 14, 16], "seem": 6, "seen": [0, 5, 6, 7, 10, 12, 14, 16], "segment": 4, "select": [3, 4, 7, 11, 12, 13, 14, 15, 16, 17], "selected_el": 16, "selectedindex": 16, "selector": [10, 16], "selector1": 10, "selector2": 10, "selectorn": 10, "selectwidget": 12, "self": [2, 5, 10, 12, 14, 16], "semant": [12, 13], "send": [2, 6, 12, 13], "send_two_factor_email": 13, "sender": 13, "sens": [0, 6, 12, 13], "sensit": [5, 6, 12], "sent": [5, 6, 13, 16], "separ": [2, 5, 6, 8, 12, 13, 14, 16], "sequenc": [5, 6], "sequenti": 6, "seri": 1, "serial": [4, 5, 6, 8, 10, 12], "serializ": [0, 5, 6, 10], "serv": [0, 2, 4, 6, 13, 15, 16], "server": [0, 2, 3, 4, 7, 8, 13, 15, 16, 17], "server_addr": 6, "serversid": 16, "session": [0, 2, 4, 6, 10, 12, 13, 14, 15, 16, 17], "session_app1": 5, "session_secret_kei": 5, "set": [0, 1, 2, 4, 5, 7, 8, 10, 11, 13, 16], "set_attribut": 6, "set_encod": 6, "set_head": 6, "set_password": 3, "setinterv": 16, "setup": [1, 3, 4, 13, 14, 16, 17], "setvirtualfield": 6, "sever": 6, "sf": 16, "sftp": 6, "sh": 16, "sha512": [8, 12], "share": [6, 15], "shell": 10, "ship": 8, "shoe": 6, "shop": 5, "short": [12, 16], "shortcut": [8, 12], "shorter": [6, 12], "shortli": 4, "should": [1, 2, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "show": [1, 2, 4, 5, 6, 8, 12, 13, 14], "show_id": 14, "shown": [2, 6, 12, 13], "shutil": 6, "side": [1, 6, 16, 17], "sidebar": 8, "sidebar_en": 8, "sidebar_menu": 10, "sidecar": 16, "sign": [2, 4, 5, 6, 8, 12, 13], "signatur": [5, 7, 10, 12], "signed_url": 5, "signer": 5, "signifi": 8, "signific": 8, "signing_info": 12, "similar": [0, 4, 5, 6, 10, 12, 15], "similarli": [6, 10], "simpl": [1, 2, 4, 5, 6, 7, 8, 10, 12, 14, 16, 17], "simple_queri": 16, "simpler": [6, 8, 14], "simplest": [2, 4], "simpli": [2, 4, 5, 6, 8, 11, 12, 16], "simplic": [6, 16], "simplifi": [0, 4, 6, 8], "simultan": 6, "sinc": [0, 4, 5, 6, 7, 8, 13, 14, 15], "singl": [0, 2, 5, 6, 7, 8, 10, 12, 13, 14], "singleton": [5, 15], "site": [1, 2, 4, 5, 6, 10, 14, 16], "situat": 6, "six": 6, "size": [5, 6, 8, 12], "skip": [5, 16], "slash": [1, 4, 5, 13], "slave": 6, "sleep": 16, "sleep_tim": 16, "slice": 6, "slicker": 0, "slow": [6, 16], "slug": 12, "small": [5, 12], "smaller": 6, "snippet": 6, "so": [2, 5, 6, 8, 10, 12, 13, 14, 15, 16], "soap": 10, "socket": 16, "solut": [0, 1, 2, 6, 16], "some": [0, 1, 2, 4, 5, 6, 7, 8, 10, 12, 13, 15, 16], "some_condit": 8, "some_form": 12, "some_valu": 6, "somefield": 6, "somefil": 6, "somepath": 5, "somet": 6, "someth": [5, 6, 7, 8, 10, 12, 16], "sometim": [6, 8, 10, 12, 14], "somevalu": 6, "somewhat": 12, "somewher": 6, "soon": [8, 16], "sophist": 15, "sort": 14, "sourc": [3, 4, 6, 12, 16], "source1": 12, "south": 1, "sp": 6, "space": [6, 8, 12, 14], "span": [4, 15], "spatialit": 6, "speak": 5, "special": [0, 4, 5, 6, 8, 10, 11, 13, 15, 17], "specif": [1, 2, 5, 6, 7, 8, 10, 12, 13, 15, 16], "specifi": [2, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "speed": [6, 7, 8], "sphinx": 1, "spiderman": [7, 14], "spin": [0, 4], "spirit": 7, "split": [6, 7, 8, 12], "split_email": 12, "sql": 17, "sql_mode": 6, "sqladapt": 6, "sqlcustomtyp": 6, "sqlform": [0, 12, 15], "sqlite": [1, 5, 7, 13, 14, 16], "sqlite3": 6, "sqliteadapt": 6, "squar": [0, 8], "src": [5, 6, 8, 10, 12, 16], "ss": 12, "ssl": 2, "ssl_cert": 2, "ssl_kei": 2, "sslcert": 6, "sslkei": 6, "sslmode": 6, "sslrootcert": 6, "sso_id": [5, 13], "stabl": 2, "stai": 6, "stand": [7, 10, 12], "standard": [1, 2, 3, 6, 7, 13, 14, 15, 16, 17], "start": [0, 1, 2, 3, 4, 5, 6, 8, 10, 12, 13, 14, 15, 16], "start_imperson": 13, "startup": [6, 15, 17], "state": [5, 6, 7, 15, 16], "stateless": [5, 16], "statement": [6, 8, 12], "static": [1, 8, 10, 15, 17], "static_dev": 4, "statu": 7, "stderr": [2, 16], "stdout": [2, 16], "steil": [0, 1, 14], "step": [2, 6, 13, 15, 16], "step1": 5, "step2": 5, "step3": 5, "step_complet": 5, "still": [2, 5, 6, 10, 12, 14, 15], "stone": 14, "stop": [2, 3, 13], "stop_imperson": 13, "storag": [5, 6, 7, 14], "store": [0, 2, 5, 6, 10, 12, 13, 15, 16], "stored_item": 6, "stored_item_arch": 6, "stori": [0, 5], "str": [2, 5, 6, 10, 12, 15, 16], "stream": [4, 5, 6, 15], "strength": 7, "strict": 12, "strictli": [4, 16], "string": [4, 5, 7, 8, 10, 11, 12, 14], "stringio": 6, "stringlistproperti": 6, "strip": [2, 12, 15], "strong": [0, 10, 13], "strongli": [1, 5, 12, 14], "structur": [1, 4, 5, 6, 11, 13, 14, 15, 17], "stuck": 2, "student": 2, "studi": 1, "studio": 1, "stuff": [12, 14], "style": [4, 8, 12, 16, 17], "stylesheet": [8, 14], "sub": 6, "subclass": [6, 12], "subfold": [4, 5, 6], "subhead": 10, "subject": [6, 7, 13], "submiss": [12, 16], "submit": [1, 5, 6, 10, 12, 13, 14, 16], "submodul": 0, "subnet": 12, "subqueri": 16, "subsect": 6, "subset": [0, 6, 12], "substitut": [6, 8], "substr": 12, "subtl": 6, "succe": 6, "succeed": 0, "success": [0, 4, 5, 6, 7, 13, 16], "successfulli": 13, "sudo": [2, 13], "suffer": [0, 13], "suffic": 6, "suffici": 6, "sugar": 5, "suggest": [1, 6, 12], "sugizo": 0, "suit": 2, "summar": 6, "superhero": [6, 7, 12, 14, 16], "superman": [6, 7, 12, 14], "superpow": [6, 7], "superseed": 6, "suppli": 10, "support": [1, 4, 5, 8, 10, 11, 12, 13, 15, 16, 17], "suppos": 6, "suppress": [2, 10], "sure": [2, 3, 4, 5, 6, 11, 12, 13, 16], "surround": 12, "susan": 6, "sv": 6, "switch": [2, 5, 6], "sybas": 6, "sybaseadapt": 6, "symbol": 12, "symlink": [2, 4], "sync": [2, 6], "synopsi": 12, "syntact": [5, 12], "syntax": [0, 1, 4, 5, 6, 7, 10, 12, 13, 15, 16, 17], "system": [0, 2, 5, 6, 10, 13, 16], "sysus": 6, "t": [0, 1, 2, 3, 4, 5, 6, 8, 10, 11, 12, 13, 14, 15], "t_folder": 5, "tab": [3, 5, 12], "tabl": [5, 7, 12, 13, 14, 15, 16], "table1": 6, "table_hash": 6, "table_nam": 6, "tablenam": [6, 7, 12, 16], "tag": [0, 5, 7, 8, 15, 16, 17], "tag_input": 16, "tagged_db": 13, "tagged_nam": 13, "tagger": 10, "tags_input": 16, "tail": 6, "take": [2, 3, 4, 5, 6, 8, 10, 12, 13, 14, 16], "taken": 12, "tamper": [5, 6], "tanti": 16, "tantissimi": 11, "tar": 12, "target": [6, 10, 16], "task": [1, 5, 6, 13, 16], "task_run": 16, "tast": 6, "tbodi": 6, "tcp": 3, "td": 6, "teacher": 13, "technic": 16, "tell": [2, 4, 5, 6, 13, 14, 16], "temp": 6, "templat": [0, 10, 12, 13, 15, 16, 17], "temporari": 6, "temporarili": 5, "ten": 12, "tenanc": 6, "teradata": 6, "teradataadapt": 6, "teredo": 12, "term": [6, 12], "termin": [4, 8, 16], "test": [0, 2, 4, 6, 8, 10, 12, 13, 14], "text": [2, 5, 6, 8, 10, 14, 16], "textarea": 12, "textareawidget": 12, "textual": 10, "th": 6, "than": [0, 2, 4, 5, 6, 7, 8, 10, 12, 13, 14, 16], "thank": [0, 6, 10], "that_templ": 8, "thead": 6, "thei": [0, 2, 4, 5, 6, 7, 8, 12, 13, 15, 16], "them": [0, 1, 2, 4, 5, 6, 7, 8, 12, 13, 14, 15], "themselv": [6, 8], "therefor": [2, 4, 5, 6, 8, 10, 12, 15], "therein": 6, "thi": [0, 2, 3, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "thing": [2, 5, 6, 12, 15], "thing_id": 12, "thing_tags_default": 6, "think": [5, 6, 8, 14, 16], "third": [0, 5, 6, 12], "this_templ": 8, "thisisatest": 10, "thisisthekei": 12, "those": [0, 2, 5, 6, 8, 10, 13, 15, 16], "though": 8, "thought": [0, 6, 13], "thread": [2, 5, 6, 15, 16], "threadsafevari": 5, "three": [0, 5, 6], "through": [2, 12], "throughout": 5, "thu": [6, 8], "thumbnail": 12, "ti": 5, "ticket": [0, 3, 6], "tickets_onli": 2, "tild": 6, "tim": 6, "time": [0, 2, 4, 5, 8, 14, 15, 16], "timedelta": 12, "timeoffset": 10, "timeout": [5, 16], "timestamp": [5, 7, 16], "tip": [2, 14, 17], "titl": [3, 8, 12, 16], "tmp": [5, 6], "todai": [0, 12, 16], "todo": 16, "togeth": [0, 6, 8, 11, 14], "toi": 6, "token": [5, 12], "too": [2, 5, 6, 12, 16], "took": 6, "tool": [0, 6, 13, 16], "top": [8, 11, 12, 13], "topic": [14, 17], "tornado": 2, "total": [6, 7], "total_pric": 6, "touch": 8, "tr": 6, "traceback": [5, 6], "track": [1, 6, 15], "trade": 6, "tradit": [2, 6], "trail": [2, 12], "train": 1, "transact": 5, "transat": 16, "transform": [5, 6, 12, 16], "transit": 16, "translat": [1, 2, 4, 6, 8, 12, 15, 16, 17], "transpar": [6, 8, 12], "trap": 16, "treat": [6, 15], "tree": [4, 8, 12], "tri": [0, 6, 15], "trick": 2, "trickeri": 8, "trigger": [3, 5, 6, 16], "trivial": [5, 6], "true": [1, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "truncat": 6, "truth": 16, "try": [1, 2, 5, 6, 12, 13, 16], "ttl": 5, "tupl": [6, 8, 10], "turn": [0, 4, 6, 12, 13, 14, 16], "tutori": [2, 14, 16], "twice": [5, 6], "twitter": [0, 5, 13], "two": [0, 1, 2, 4, 5, 6, 8, 12, 14, 15, 16], "two_factor": 13, "two_factor_filt": 13, "txt": [0, 2, 4, 6], "typ": 12, "type": [2, 4, 5, 7, 8, 10, 13, 14, 16], "typewrit": 10, "typic": [4, 5, 6, 8, 12], "u": [2, 6, 10, 12], "ubuntu": 13, "uc": 1, "uid": 6, "ul": [8, 12, 13, 16], "un": [8, 10, 11, 16], "unari": 6, "unauthent": [5, 6, 10], "unauthor": 6, "unchang": [6, 12], "under": [2, 3, 4, 5, 6, 12], "underli": 15, "underscor": [6, 10, 12], "understand": [0, 1, 4, 6, 7, 8, 14, 17], "undocu": 16, "unfortun": [6, 14], "unicod": [6, 12], "unicodedecodeerror": 6, "uniform": 6, "union": 6, "uniqu": [6, 7, 12], "unit_pric": 6, "univers": [6, 10], "unknown": 4, "unless": [2, 3, 5, 6, 8, 12, 16], "unlik": [0, 2, 4, 6, 7, 8, 15, 16], "unnam": [6, 10], "unned": 2, "unord": 10, "unpkg": 16, "unquot": [6, 10], "unsaf": [5, 10, 12], "untest": [2, 13], "until": [0, 5, 6, 8, 12], "unus": 6, "unusu": 6, "unwant": [2, 6], "unzip": 2, "up": [1, 2, 5, 6, 8, 13, 16], "updat": [2, 5, 12, 14, 15, 16, 17], "update_form": 12, "update_languag": 11, "update_na": 6, "update_th": 12, "upgrad": [6, 17], "upload": [0, 4, 15], "upload_fold": [6, 12], "upload_help": 16, "uploadf": 6, "uploadfield": 6, "uploadfold": 6, "uploadsepar": 6, "upon": [2, 8, 13, 15], "upper": [4, 5, 12], "upper_cas": 5, "uppercas": [5, 12], "uri": 13, "url": [2, 4, 5, 7, 8, 12, 13, 14, 15, 16], "url_prefix": 2, "url_sign": 5, "url_to_post_to": 16, "urlsign": 17, "us": [0, 1, 3, 4, 7, 11, 12, 15, 17], "usabl": 14, "usag": [2, 3, 4, 5, 6, 10, 12, 13, 14], "use_schedul": 16, "useful": 12, "useless": [12, 15], "user": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 14, 15, 16], "user_email": 15, "user_id": [5, 6, 13, 15], "user_nam": 6, "user_outside_network": 13, "user_password": 6, "usernam": [5, 6, 13], "usr": 1, "usual": [1, 2, 5, 6, 7, 8, 10, 12], "utcnow": [5, 6], "utf": 6, "utf8": 6, "utf8mb4": 6, "util": [2, 4, 5, 8, 10, 12, 13, 14, 15, 17], "uuid": [5, 6], "uuid4": [5, 6], "v": [5, 10, 12, 16], "v3": 1, "val": [14, 16], "val1_row1": 6, "val1_row2": 6, "val2_row1": 6, "val2_row2": 6, "valid": [2, 4, 7, 8, 10, 14, 15, 17], "validate_j": 4, "valq7711": [0, 4], "valu": [2, 5, 7, 8, 10, 11, 12, 14, 16], "valuabl": 1, "value1": 6, "value2": 6, "value_field": 12, "var": [6, 10, 12, 15, 16], "varchar": 6, "variabl": [4, 5, 6, 10, 11, 12, 14, 16], "variou": [5, 6], "ve": [1, 2, 3, 5, 8, 10, 12, 14, 16], "vehicl": 5, "vendor": 16, "vendor_typ": 16, "venv": 2, "verbos": 6, "veri": [0, 4, 5, 6, 8, 10, 12, 13, 15, 16], "verif": 13, "verifi": [5, 12, 13], "verify_email": 13, "versa": 5, "version": [1, 3, 5, 7, 8, 12, 16], "vertica": 6, "verticaadapt": 6, "via": [5, 6, 8, 10, 13, 16], "vice": 5, "video": [2, 16], "view": [1, 5, 6], "viewport": 8, "virtual": [1, 17], "virtualenv": [1, 2], "virtualfield": 6, "visibl": 4, "visit": [3, 5, 6, 8, 12, 13], "visit_log": 5, "visitor": [6, 10, 12], "visto": 5, "visual": 1, "vital": 13, "volt": 5, "vscode": 2, "vue": [0, 4, 16], "vulner": 8, "w": [2, 4, 5, 6], "w2p_even": 6, "w2p_odd": 6, "wa": [0, 5, 6, 12, 13], "wai": [0, 2, 3, 4, 5, 6, 8, 10, 12, 13, 14, 15, 16], "wait": 6, "waitress": 2, "want": [2, 4, 5, 6, 8, 10, 12, 14, 16], "warn": [2, 5], "warp": 11, "watch": [2, 3, 17], "wayn": [7, 14], "wb": 6, "we": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "web": [0, 1, 2, 5, 6, 8, 13, 14, 15, 16, 17], "web2pi": [0, 1, 2, 3, 4, 6, 12, 13, 14, 17], "webserv": 4, "websit": [6, 16], "websocket": 16, "welcom": [2, 4, 5, 8, 15, 16], "well": [0, 5, 6, 8, 12, 13, 16], "were": [0, 4, 6], "what": [1, 4, 5, 6, 8, 12, 13, 15, 16, 17], "whatev": [10, 16], "when": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "whenev": [4, 6], "where": [1, 2, 4, 6, 7, 8, 12, 13, 15, 16], "whether": [5, 6, 8, 12, 13, 14, 15], "which": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "whichev": 16, "while": [0, 5, 6, 7, 12, 13, 15], "white": [10, 16], "whitelist": 13, "who": [0, 13], "whole": [4, 12], "whose": [6, 8, 12], "why": [5, 6, 8, 15], "widget": [6, 17], "width": [8, 12], "wiki": [6, 7], "wikipedia": [6, 7], "wild": 6, "wildcard": 4, "william": 6, "window": [1, 2, 4, 5, 6, 8, 12], "wish": [1, 6, 12, 16], "wit": 2, "with_alia": 6, "withh": 5, "within": [0, 1, 4, 5, 6, 8, 10, 12, 14, 16], "without": [1, 8, 10, 14, 16, 17], "wolf": 0, "won": 6, "wood": 6, "word": [5, 6, 11, 14], "work": [0, 2, 4, 5, 6, 8, 10, 12, 13, 14, 15, 16], "worker": [2, 5, 16], "workflow": [5, 17], "workload": 6, "workspacefold": 2, "world": [4, 5, 6, 8, 10, 12], "worri": [4, 6], "worth": 8, "would": [0, 5, 6, 8, 10, 12, 14, 16], "wouldn": 6, "wrap": [5, 11, 12, 16], "wrapper": [15, 16], "writabl": [5, 6, 12, 15], "write": [2, 4, 5, 6, 8, 12, 15], "written": [1, 8, 12, 14], "wrong": [0, 5, 6], "wsgi": 5, "wsgiref": 2, "wsgirefthreadingserv": 2, "wsgith": 2, "www": [2, 8, 10, 14], "x": [2, 6, 8, 10, 12, 14, 16], "xml": [5, 8, 12, 15, 16], "xmlescap": 10, "xmln": 10, "xss": [6, 8, 10], "xyz": [10, 12], "y": [2, 10, 12], "yaml": 2, "yatl": [0, 4, 5, 6, 12, 14, 16, 17], "yb": 10, "ye": [2, 6, 16], "year": [12, 16], "yes_or_no": 6, "yet": [0, 2, 4, 5, 6, 8, 12, 16], "yield": 6, "yml": 2, "you": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "your": [1, 2, 3, 4, 5, 6, 8, 10, 12, 13, 14, 15, 16], "your_app": 12, "your_full_path_to_py4web": 1, "your_nam": [1, 16], "yourapp": 6, "yourappnam": 2, "youremail": 13, "yourself": [1, 2, 12, 14], "youtub": [2, 6], "yyyi": 12, "z": [10, 12], "zanferrari": 0, "zap": 13, "zap_id": 13, "zapper": 13, "zero": [6, 8, 12, 14], "zip": [0, 2, 6, 12], "zip_cod": 16, "zxjdbc": 6}, "titles": ["What is py4web?", "Help, resources and hints", "Installation and Startup", "The Dashboard", "Creating an app", "Fixtures", "The Database Abstraction Layer (DAL)", "The RestAPI", "YATL Template Language", "<no title>", "YATL helpers", "Internationalization", "Forms", "Authentication and authorization", "Grid", "From web2py to py4web", "Advanced topics and examples", "py4web: the reference Manual"], "titleterms": {"A": [1, 10, 12], "On": 4, "One": 6, "The": [1, 3, 4, 5, 6, 7, 12, 14, 16], "_lastsql": 6, "_scaffold": 4, "about": [5, 6], "abstract": 6, "access": 15, "acknowledg": 0, "action": [7, 13, 14], "ad": 6, "adapt": 6, "advanc": [6, 12, 16], "aka": 2, "alias": 6, "all": 6, "alon": 6, "an": [4, 6], "anoth": 6, "any_of": 12, "anywher": 5, "app": [2, 4], "applic": 6, "arg": 15, "as_dict": 6, "as_list": 6, "asyncio": 16, "attempt": 6, "attribut": 6, "auth": [5, 13, 15], "authent": 13, "author": 13, "autocomplet": 16, "avg": 6, "base": 6, "basic": [8, 12, 14], "beautifi": 10, "belong": 6, "binari": 2, "block": 8, "bodi": 10, "broken": 6, "built": 10, "button": 14, "cach": [5, 6], "cacheabl": 6, "call": [2, 15], "callabl": 14, "callback": 6, "cascad": 6, "case": 6, "cat": 10, "caveat": 5, "celeri": 16, "chang": 4, "checkbox": 12, "children": 10, "class": 14, "cleanup": 12, "client": 5, "coalesc": 6, "coalesce_zero": 6, "column": 14, "com": 2, "combin": 6, "command": [2, 6], "commit": 6, "common": 6, "complex": 12, "comput": 6, "condit": 5, "connect": 6, "constructor": [6, 12], "contain": 6, "content": 17, "contribut": 1, "control": 6, "conveni": 5, "convers": 15, "cooki": 5, "copi": [4, 6], "count": 6, "counter": 15, "creat": 4, "crud": 14, "crypt": 12, "csv": 6, "custom": [5, 6, 10, 12, 14], "dai": 6, "dal": [5, 6], "dashboard": 3, "data": 6, "databas": [5, 6, 12], "datastor": 6, "date": 12, "db": 6, "debug": 1, "decor": 5, "def": 8, "default": [6, 8], "defin": 6, "define_t": 6, "delet": 6, "deploy": 2, "design": [2, 12], "develop": 8, "dictionari": [6, 12], "discord": [1, 13], "distinct": 6, "distribut": 6, "div": 10, "docker": 2, "dom": 10, "drop": 6, "dynam": 4, "elif": 8, "els": 8, "em": 10, "endswith": 6, "engin": 2, "environ": 2, "equal": 12, "exampl": [7, 12, 14, 15, 16], "except": 8, "exclud": 6, "executesql": 6, "experi": 6, "experiment": 6, "export": 6, "express": 6, "extend": 8, "facebook": 13, "factor": 13, "failur": 6, "fake_migr": 6, "featur": [6, 14], "fetch": 6, "field": [6, 12, 14], "file": [4, 11, 12, 15], "filter": [6, 14], "filter_in": 6, "filter_out": 6, "final": 8, "find": [6, 10], "first": [2, 6], "fix": 6, "fixtur": 5, "flash": [5, 15], "folder": 6, "form": [10, 12, 15, 16], "format": [6, 12, 16], "from": [2, 4, 6, 15], "function": [8, 12], "gae": 2, "gcloud": 2, "gener": 6, "get": 7, "github": 1, "global": 2, "googl": [1, 2, 6, 13], "gotcha": 6, "grid": [14, 15, 16], "group": [1, 6], "groupbi": 6, "h1": 10, "h2": 10, "h3": 10, "h4": 10, "h5": 10, "h6": 10, "have": 6, "head": 10, "hello": 15, "help": 1, "helper": 10, "hint": 1, "hour": 6, "how": 1, "html": [6, 10], "htmx": 16, "http": 2, "i": [0, 10], "id": 6, "ilik": 6, "img": 10, "imperson": 13, "import": 6, "includ": 8, "index": 6, "indic": 17, "inform": 8, "inherit": 6, "inject": [5, 10], "inner": 6, "input": 10, "insert": 6, "insid": 13, "instal": 2, "internation": 11, "introduct": 6, "is_alphanumer": 12, "is_dat": 12, "is_date_in_rang": 12, "is_datetim": 12, "is_datetime_in_rang": 12, "is_decimal_in_rang": 12, "is_email": 12, "is_empty_or": 12, "is_equal_to": 12, "is_expr": 12, "is_fil": 12, "is_float_in_rang": 12, "is_imag": 12, "is_in_db": 12, "is_in_set": 12, "is_int_in_rang": 12, "is_ipaddress": 12, "is_ipv4": 12, "is_ipv6": 12, "is_json": 12, "is_length": 12, "is_list_of": 12, "is_list_of_email": 12, "is_low": 12, "is_match": 12, "is_not_empti": 12, "is_not_in_db": 12, "is_null_or": 12, "is_saf": 12, "is_slug": 12, "is_strong": 12, "is_tim": 12, "is_upload_filenam": 12, "is_upp": 12, "is_url": 12, "isempti": 6, "iter": 6, "j": 16, "join": 6, "kei": [6, 14], "keyword": 6, "label": 10, "languag": 8, "last": 6, "layer": 6, "layout": 8, "lazi": 6, "ldap": 13, "left": 6, "legaci": 6, "len": 6, "less": 6, "li": 10, "like": 6, "limitbi": 6, "line": 2, "list": 6, "local": 2, "locat": 6, "logic": 6, "login": 3, "lower": 6, "main": 3, "make": 6, "mani": 6, "manipul": 12, "manual": [1, 17], "max": 6, "memcach": 5, "memoiz": 5, "memori": 6, "method": [6, 15], "microsoft": 6, "migrat": 6, "min": 6, "minim": 12, "minut": 6, "mobil": 8, "model": 6, "modern": 1, "modif": 6, "month": 6, "more": 6, "mssql": 6, "multipl": [5, 13], "mysql": 6, "name": 6, "new": 6, "new_app": 2, "nosql": 6, "note": 6, "o": 15, "oauth2": 13, "object": [4, 13, 14, 16], "ol": 10, "old": 6, "on_defin": 6, "onc": 6, "one": 6, "oper": 6, "option": [2, 10, 12], "oracl": 6, "orderbi": 6, "orderby_on_limitbi": 6, "other": [6, 12], "outer": 6, "overview": 10, "p": 10, "page": [3, 4, 8], "pam": 13, "paramet": [6, 12, 14], "permiss": 13, "pip": 2, "platform": 2, "plugin": 13, "plural": [6, 11], "podman": 2, "polici": 7, "polymodel": 6, "pool": 6, "practic": 7, "pre": 10, "prerequisit": [1, 2], "primari": 6, "primarykei": 6, "procedur": 2, "py4web": [0, 1, 6, 15, 16, 17], "pycharm": 1, "python": 1, "pythonanywher": 2, "q": 16, "queri": 6, "quick": 6, "quot": 6, "rang": 12, "raw": 6, "real": 6, "record": 6, "recurs": 6, "redefin": 6, "redi": 5, "redirect": 15, "refer": [6, 14, 17], "regexp": 6, "relat": 6, "remot": 6, "render": 6, "replic": 6, "repres": 6, "represent": 6, "request": 4, "reserv": 6, "resourc": 1, "respons": 7, "restapi": 7, "return": [4, 8, 15], "rname": 6, "rollback": 6, "rout": 4, "row": 6, "run": [2, 6], "sampl": 14, "schedul": 16, "scratch": 4, "script": 10, "search": 14, "second": 6, "secur": [6, 12], "select": [6, 10], "self": 6, "sequence_nam": 6, "server": [1, 5, 6, 10], "session": 5, "set": [6, 12, 14, 15], "set_password": 2, "setup": 2, "share": 5, "shell": [2, 6], "shortcut": 6, "side": [5, 10], "sidecar": 12, "signatur": 6, "simpl": 15, "singular": 6, "sort": [6, 12], "sourc": [1, 2], "span": 10, "special": [2, 12], "sql": 6, "sqlite": 6, "stand": 6, "standard": [8, 12], "startswith": 6, "startup": 2, "static": 4, "string": [6, 16], "structur": [8, 12], "style": [6, 10, 14], "substr": 6, "sum": 6, "summari": 6, "super": 8, "support": [2, 6], "synchron": 6, "syntax": 8, "t": 16, "tabl": [6, 10, 17], "table_class": 6, "tag": [6, 10, 12, 13], "tbodi": 10, "td": 10, "templat": [4, 5, 8, 14], "text": 12, "textarea": 10, "th": 10, "thead": 10, "thi": 1, "time": [6, 12], "tip": 1, "titl": 10, "topic": 16, "tour": 6, "tr": 10, "transact": 6, "translat": [5, 11], "trigger_nam": 6, "try": 8, "tt": 10, "tupl": 12, "tutori": 1, "two": 13, "two_factor_requir": 13, "two_factor_send": 13, "two_factor_tri": 13, "type": [6, 12], "ubuntu": 2, "ui": 13, "ul": 10, "understand": 2, "up": 15, "updat": [6, 11], "update_or_insert": 6, "update_record": 6, "upgrad": 2, "upload": [6, 12], "upper": 6, "uri": 6, "url": 10, "urlsign": 5, "us": [2, 5, 6, 8, 10, 13, 14, 16], "usag": 16, "user": 13, "util": 16, "valid": [6, 12], "validate_and_insert": 6, "validate_and_upd": 6, "valu": [4, 6], "variabl": [8, 15], "version": [2, 6], "video": 1, "view": 15, "virtual": [2, 6], "vscode": 1, "watch": 4, "web": [3, 4], "web2pi": 15, "what": 0, "while": 8, "widget": [12, 16], "without": [2, 6, 12], "workflow": 8, "workplac": 1, "world": 15, "wsgi": 2, "xml": [6, 10], "yatl": [8, 10], "year": 6}}) \ No newline at end of file +Search.setIndex({"alltitles": {"A": [[10, "a"]], "A minimal form example without a database": [[12, "a-minimal-form-example-without-a-database"]], "A modern python workplace": [[1, "a-modern-python-workplace"]], "ANY_OF": [[12, "any-of"]], "Acknowledgments": [[0, "acknowledgments"]], "Adding attributes to fields and tables": [[6, "adding-attributes-to-fields-and-tables"]], "Advanced features": [[6, "advanced-features"]], "Advanced form design": [[12, "advanced-form-design"]], "Advanced topics and examples": [[16, "advanced-topics-and-examples"]], "Auth Plugins": [[13, "auth-plugins"]], "Auth UI": [[13, "auth-ui"]], "Authentication and authorization": [[13, "authentication-and-authorization"]], "Authentication using Auth": [[13, "authentication-using-auth"]], "Authorization using Tags": [[13, "authorization-using-tags"]], "Autocomplete Widget using htmx": [[16, "autocomplete-widget-using-htmx"]], "BEAUTIFY": [[10, "beautify"]], "BODY": [[10, "body"]], "Basic form example": [[12, "basic-form-example"]], "Basic grid example": [[14, "basic-grid-example"]], "Basic syntax": [[8, "basic-syntax"]], "Built-in helpers": [[10, "built-in-helpers"]], "CAT": [[10, "cat"]], "CLEANUP": [[12, "cleanup"]], "CRUD settings": [[14, "crud-settings"]], "CRYPT": [[12, "crypt"]], "CSV (all tables at once)": [[6, "csv-all-tables-at-once"]], "CSV (one Table at a time)": [[6, "csv-one-table-at-a-time"]], "CSV and remote database synchronization": [[6, "csv-and-remote-database-synchronization"]], "Caching and Memoize": [[5, "caching-and-memoize"]], "Caching selects": [[6, "caching-selects"]], "Caveats about fixtures": [[5, "caveats-about-fixtures"]], "Celery": [[16, "celery"]], "Checkbox validation": [[12, "checkbox-validation"]], "Client-side session in cookies": [[5, "client-side-session-in-cookies"]], "Combining rows": [[6, "combining-rows"]], "Command line options": [[2, "command-line-options"]], "Common filters": [[6, "common-filters"]], "Complexity and security validators": [[12, "complexity-and-security-validators"]], "Computed and Virtual fields": [[6, "computed-and-virtual-fields"]], "Computed fields": [[6, "computed-fields"]], "Connection failures (attempts parameter)": [[6, "connection-failures-attempts-parameter"]], "Connection pooling": [[6, "connection-pooling"]], "Connection strings (the uri parameter)": [[6, "connection-strings-the-uri-parameter"]], "Contents:": [[17, null]], "Convenience Decorators": [[5, "convenience-decorators"]], "Copy data from one db into another": [[6, "copy-data-from-one-db-into-another"]], "Copying the _scaffold app": [[4, "copying-the-scaffold-app"]], "Creating an app": [[4, "creating-an-app"]], "Custom Action Buttons": [[14, "custom-action-buttons"]], "Custom Field types": [[6, "custom-field-types"]], "Custom columns": [[14, "custom-columns"]], "Custom fixtures": [[5, "custom-fixtures"]], "Custom forms": [[12, "custom-forms"]], "Custom helpers": [[10, "custom-helpers"]], "Custom widgets": [[12, "custom-widgets"]], "Customizing style": [[14, "customizing-style"]], "DAL constructor": [[6, "dal-constructor"]], "DAL introduction": [[6, "dal-introduction"]], "DAL signature": [[6, "dal-signature"]], "DIV": [[10, "div"]], "Data representation": [[6, "data-representation"]], "Database cascades": [[6, "database-cascades"]], "Database folder location": [[6, "database-folder-location"]], "Database quoting and case settings": [[6, "database-quoting-and-case-settings"]], "Database validators": [[12, "database-validators"]], "Date and time validators": [[12, "date-and-time-validators"]], "Debugging py4web with PyCharm": [[1, "debugging-py4web-with-pycharm"]], "Debugging py4web with VScode": [[1, "debugging-py4web-with-vscode"]], "Default migration settings": [[6, "default-migration-settings"]], "Default page layout": [[8, "default-page-layout"]], "Default values with coalesce and coalesce_zero": [[6, "default-values-with-coalesce-and-coalesce-zero"]], "Deployment on Docker/Podman": [[2, "deployment-on-docker-podman"]], "Deployment on GCloud (aka GAE - Google App Engine)": [[2, "deployment-on-gcloud-aka-gae-google-app-engine"]], "Deployment on PythonAnywhere.com": [[2, "deployment-on-pythonanywhere-com"]], "Deployment on Ubuntu": [[2, "deployment-on-ubuntu"]], "Dictionaries and tuples with IS_IN_SET": [[12, "dictionaries-and-tuples-with-is-in-set"]], "Distributed transaction": [[6, "distributed-transaction"]], "Dynamic Web Pages": [[4, "dynamic-web-pages"]], "EM": [[10, "em"]], "Experiment with the py4web shell": [[6, "experiment-with-the-py4web-shell"]], "Exporting and importing data": [[6, "exporting-and-importing-data"]], "Expressions": [[6, "expressions"]], "Extending using variables": [[8, "extending-using-variables"]], "FORM": [[10, "form"]], "Fetching a Row": [[6, "fetching-a-row"]], "Field constructor": [[6, "field-constructor"]], "Field types and validators": [[6, "field-types-and-validators"]], "File upload field": [[12, "file-upload-field"]], "First run": [[2, "first-run"]], "Fixing broken migrations": [[6, "fixing-broken-migrations"]], "Fixtures": [[5, "fixtures"]], "Form structure manipulation": [[12, "form-structure-manipulation"]], "Form validation": [[12, "form-validation"]], "Forms": [[12, "forms"]], "From scratch": [[4, "from-scratch"]], "From web2py to py4web": [[15, "from-web2py-to-py4web"]], "Generating raw SQL": [[6, "generating-raw-sql"]], "Google NoSQL (Datastore)": [[6, "google-nosql-datastore"]], "Google SQL": [[6, "google-sql"]], "Gotchas": [[6, "gotchas"]], "Grid": [[14, "grid"]], "Grids with checkboxes": [[14, "grids-with-checkboxes"]], "Grouping and counting": [[6, "grouping-and-counting"]], "H1, H2, H3, H4, H5, H6": [[10, "h1-h2-h3-h4-h5-h6"]], "HEAD": [[10, "head"]], "HTML": [[10, "html"]], "HTML and XML (one Table at a time)": [[6, "html-and-xml-one-table-at-a-time"]], "HTTPS": [[2, "https"]], "Help, resources and hints": [[1, "help-resources-and-hints"]], "Helpers overview": [[10, "helpers-overview"]], "Hints and tips": [[1, "hints-and-tips"]], "How to contribute": [[1, "how-to-contribute"]], "I": [[10, "i"]], "IMG": [[10, "img"]], "INPUT": [[10, "input"]], "IS_ALPHANUMERIC": [[12, "is-alphanumeric"]], "IS_DATE": [[12, "is-date"]], "IS_DATETIME": [[12, "is-datetime"]], "IS_DATETIME_IN_RANGE": [[12, "is-datetime-in-range"]], "IS_DATE_IN_RANGE": [[12, "is-date-in-range"]], "IS_DECIMAL_IN_RANGE": [[12, "is-decimal-in-range"]], "IS_EMAIL": [[12, "is-email"]], "IS_EMPTY_OR": [[12, "is-empty-or"]], "IS_EQUAL_TO": [[12, "is-equal-to"]], "IS_EXPR": [[12, "is-expr"]], "IS_FILE": [[12, "is-file"]], "IS_FLOAT_IN_RANGE": [[12, "is-float-in-range"]], "IS_IMAGE": [[12, "is-image"]], "IS_INT_IN_RANGE": [[12, "is-int-in-range"]], "IS_IN_DB": [[12, "is-in-db"]], "IS_IN_DB and Tagging": [[12, "is-in-db-and-tagging"]], "IS_IN_SET": [[12, "is-in-set"]], "IS_IN_SET and Tagging": [[12, "is-in-set-and-tagging"]], "IS_IPADDRESS": [[12, "is-ipaddress"]], "IS_IPV4": [[12, "is-ipv4"]], "IS_IPV6": [[12, "is-ipv6"]], "IS_JSON": [[12, "is-json"]], "IS_LENGTH": [[12, "is-length"]], "IS_LIST_OF": [[12, "is-list-of"]], "IS_LIST_OF_EMAILS": [[12, "is-list-of-emails"]], "IS_LOWER": [[12, "is-lower"]], "IS_MATCH": [[12, "is-match"]], "IS_NOT_EMPTY": [[12, "is-not-empty"]], "IS_NOT_IN_DB": [[12, "is-not-in-db"]], "IS_NULL_OR": [[12, "is-null-or"]], "IS_SAFE": [[12, "is-safe"]], "IS_SLUG": [[12, "is-slug"]], "IS_STRONG": [[12, "is-strong"]], "IS_TIME": [[12, "is-time"]], "IS_UPLOAD_FILENAME": [[12, "is-upload-filename"]], "IS_UPPER": [[12, "is-upper"]], "IS_URL": [[12, "is-url"]], "Indexes": [[6, "indexes"]], "Indices and tables": [[17, "indices-and-tables"]], "Information workflow": [[8, "information-workflow"]], "Inner join": [[6, "inner-join"]], "Inserting and updating from a dictionary": [[6, "inserting-and-updating-from-a-dictionary"]], "Installation and Startup": [[2, "installation-and-startup"]], "Installing from binaries": [[2, "installing-from-binaries"]], "Installing from pip, using a virtual environment": [[2, "installing-from-pip-using-a-virtual-environment"]], "Installing from pip, without virtual environment": [[2, "installing-from-pip-without-virtual-environment"]], "Installing from source (globally)": [[2, "installing-from-source-globally"]], "Installing from source (locally)": [[2, "installing-from-source-locally"]], "Internationalization": [[11, "internationalization"]], "Joins and Relations": [[6, "joins-and-relations"]], "Key features": [[14, "key-features"]], "LABEL": [[10, "label"]], "LDAP": [[13, "ldap"]], "LI": [[10, "li"]], "Lazy Tables": [[6, "lazy-tables"]], "Left outer join": [[6, "left-outer-join"]], "Legacy databases and keyed tables": [[6, "legacy-databases-and-keyed-tables"]], "Logical operators": [[6, "logical-operators"]], "Login into the Dashboard": [[3, "login-into-the-dashboard"]], "MSSQL (Microsoft SQL Server)": [[6, "mssql-microsoft-sql-server"]], "Making a secure connection": [[6, "making-a-secure-connection"]], "Many to many relation": [[6, "many-to-many-relation"]], "Migration control summary": [[6, "migration-control-summary"]], "Migrations": [[6, "migrations"]], "Mobile development": [[8, "mobile-development"]], "Model-less applications": [[6, "model-less-applications"]], "More on uploads": [[6, "more-on-uploads"]], "Multiple Tags objects": [[13, "multiple-tags-objects"]], "Multiple fixtures": [[5, "multiple-fixtures"]], "MySQL": [[6, "mysql"]], "New style virtual fields (experimental)": [[6, "new-style-virtual-fields-experimental"]], "Note on new DAL and adapters": [[6, "note-on-new-dal-and-adapters"]], "OAuth2 with Discord": [[13, "oauth2-with-discord"]], "OAuth2 with Facebook": [[13, "oauth2-with-facebook"]], "OAuth2 with Google": [[13, "oauth2-with-google"]], "OL": [[10, "ol"]], "OPTION": [[10, "option"]], "Old style virtual fields": [[6, "old-style-virtual-fields"]], "On return values": [[4, "on-return-values"]], "One to many relation": [[6, "one-to-many-relation"]], "Oracle": [[6, "oracle"]], "Other DAL constructor parameters": [[6, "other-dal-constructor-parameters"]], "Other operators": [[6, "other-operators"]], "Other validators": [[12, "other-validators"]], "P": [[10, "p"]], "PAM": [[13, "pam"]], "PRE": [[10, "pre"]], "Page layout standard structure": [[8, "page-layout-standard-structure"]], "Pluralize": [[11, "pluralize"]], "Prerequisites": [[1, "prerequisites"]], "Query, Set, Rows": [[6, "query-set-rows"]], "Range, set and equality validators": [[12, "range-set-and-equality-validators"]], "Raw SQL": [[6, "raw-sql"]], "Record versioning": [[6, "record-versioning"]], "Recursive selects": [[6, "recursive-selects"]], "Reference Fields": [[14, "reference-fields"]], "Rendering rows using represent": [[6, "rendering-rows-using-represent"]], "Replicated databases": [[6, "replicated-databases"]], "Reserved keywords": [[6, "reserved-keywords"]], "Resources": [[1, "resources"]], "RestAPI GET": [[7, "restapi-get"]], "RestAPI policies and actions": [[7, "restapi-policies-and-actions"]], "RestAPI practical examples": [[7, "restapi-practical-examples"]], "Routes": [[4, "routes"]], "Run-time field and table modification": [[6, "run-time-field-and-table-modification"]], "SCRIPT": [[10, "script"]], "SELECT": [[10, "select"]], "SPAN": [[10, "span"]], "SQLite": [[6, "sqlite"]], "STYLE": [[10, "style"]], "Sample Action Button Class": [[14, "sample-action-button-class"]], "Searching and filtering": [[14, "searching-and-filtering"]], "Self-Reference and aliases": [[6, "self-reference-and-aliases"]], "Sending messages using a background task": [[16, "sending-messages-using-a-background-task"]], "Server-side DOM": [[10, "server-side-dom"]], "Server-side session anywhere": [[5, "server-side-session-anywhere"]], "Server-side session in Redis": [[5, "server-side-session-in-redis"]], "Server-side session in database": [[5, "server-side-session-in-database"]], "Server-side session in memcache": [[5, "server-side-session-in-memcache"]], "Setup procedures": [[2, "setup-procedures"]], "Sharing sessions": [[5, "sharing-sessions"]], "Shortcuts": [[6, "shortcuts"]], "Simple conversion examples": [[15, "simple-conversion-examples"]], "Sorted options": [[12, "sorted-options"]], "Special installations": [[2, "special-installations"]], "Special type validators": [[12, "special-type-validators"]], "Standard widgets": [[12, "standard-widgets"]], "Static web pages": [[4, "static-web-pages"]], "Substrings": [[6, "substrings"]], "Supported databases": [[6, "supported-databases"]], "Supported platforms and prerequisites": [[2, "supported-platforms-and-prerequisites"]], "TABLE, TR, TD": [[10, "table-tr-td"]], "TAG": [[10, "tag"]], "TBODY": [[10, "tbody"]], "TEXTAREA": [[10, "textarea"]], "TH": [[10, "th"]], "THEAD": [[10, "thead"]], "TITLE": [[10, "title"]], "TT": [[10, "tt"]], "Table constructor": [[6, "table-constructor"]], "Table inheritance": [[6, "table-inheritance"]], "Table methods": [[6, "table-methods"]], "Tagging records": [[6, "tagging-records"]], "Tags and Permissions": [[13, "tags-and-permissions"]], "Template Functions": [[8, "template-functions"]], "Templates": [[4, "templates"]], "Text format validators": [[12, "text-format-validators"]], "The Auth fixture": [[5, "the-auth-fixture"]], "The Condition fixture": [[5, "the-condition-fixture"]], "The DAL fixture": [[5, "the-dal-fixture"]], "The DAL: a quick tour": [[6, "the-dal-a-quick-tour"]], "The Dashboard": [[3, "the-dashboard"]], "The Database Abstraction Layer (DAL)": [[6, "the-database-abstraction-layer-dal"]], "The Discord server": [[1, "the-discord-server"]], "The Flash fixture": [[5, "the-flash-fixture"]], "The Form constructor": [[12, "the-form-constructor"]], "The Google group": [[1, "the-google-group"]], "The Grid object": [[14, "the-grid-object"]], "The Inject fixture": [[5, "the-inject-fixture"]], "The Q object": [[16, "the-q-object"]], "The RestAPI": [[7, "the-restapi"]], "The RestAPI response": [[7, "the-restapi-response"]], "The Session fixture": [[5, "the-session-fixture"]], "The T object": [[16, "the-t-object"]], "The Template fixture": [[5, "the-template-fixture"]], "The Translator fixture": [[5, "the-translator-fixture"]], "The URLsigner fixture": [[5, "the-urlsigner-fixture"]], "The _scaffold app": [[4, "the-scaffold-app"]], "The main Web page": [[3, "the-main-web-page"]], "The request object": [[4, "the-request-object"]], "The scheduler": [[16, "the-scheduler"]], "The sidecar parameter": [[12, "the-sidecar-parameter"]], "The sources on GitHub": [[1, "the-sources-on-github"]], "This manual": [[1, "this-manual"]], "Timing queries": [[6, "timing-queries"]], "Tutorials and video": [[1, "tutorials-and-video"]], "Two Factor Authentication": [[13, "two-factor-authentication"]], "UL": [[10, "ul"]], "URL": [[10, "url"]], "Understanding the design": [[2, "understanding-the-design"]], "Update the translation files": [[11, "update-the-translation-files"]], "Upgrading": [[2, "upgrading"]], "User Impersonation": [[13, "user-impersonation"]], "Using Auth inside actions": [[13, "using-auth-inside-actions"]], "Using DAL without define tables": [[6, "using-dal-without-define-tables"]], "Using Fixtures": [[5, "using-fixtures"]], "Using Inject": [[10, "using-inject"]], "Using an iterator-based select for lower memory use": [[6, "using-an-iterator-based-select-for-lower-memory-use"]], "Using callable parameters": [[14, "using-callable-parameters"]], "Using templates": [[14, "using-templates"]], "Using the DAL \u201cstand-alone\u201d": [[6, "using-the-dal-stand-alone"]], "Using the dashboard app with databases": [[6, "using-the-dashboard-app-with-databases"]], "Validation functions": [[12, "validation-functions"]], "Virtual fields": [[6, "virtual-fields"]], "WSGI": [[2, "wsgi"]], "Watch for files change": [[4, "watch-for-files-change"]], "What is py4web?": [[0, "what-is-py4web"]], "Widgets": [[12, "widgets"]], "XML": [[10, "xml"]], "YATL Template Language": [[8, "yatl-template-language"]], "YATL helpers": [[10, "yatl-helpers"]], "_lastsql": [[6, "lastsql"]], "as_dict and as_list": [[6, "as-dict-and-as-list"]], "belongs": [[6, "belongs"]], "block and super": [[8, "block-and-super"]], "cache, cacheable": [[6, "cache-cacheable"]], "call command option": [[2, "call-command-option"]], "callbacks on record insert, delete and update": [[6, "callbacks-on-record-insert-delete-and-update"]], "case": [[6, "case"]], "children": [[10, "children"]], "commit and rollback": [[6, "commit-and-rollback"]], "count, isempty, delete, update": [[6, "count-isempty-delete-update"]], "def...return": [[8, "def-return"]], "define_table signature": [[6, "define-table-signature"]], "distinct": [[6, "distinct"]], "drop": [[6, "drop"]], "executesql": [[6, "executesql"]], "extend and include": [[8, "extend-and-include"]], "filter_in and filter_out": [[6, "filter-in-and-filter-out"]], "find": [[10, "find"]], "find, exclude, sort": [[6, "find-exclude-sort"]], "first and last": [[6, "first-and-last"]], "for...in": [[8, "for-in"]], "format: Record representation": [[6, "format-record-representation"]], "groupby, having": [[6, "groupby-having"]], "htmx": [[16, "htmx"]], "htmx usage in Form": [[16, "htmx-usage-in-form"]], "htmx usage in Grid": [[16, "htmx-usage-in-grid"]], "id: Notes about the primary key": [[6, "id-notes-about-the-primary-key"]], "if...elif...else": [[8, "if-elif-else"]], "insert": [[6, "insert"]], "join, left": [[6, "join-left"]], "like, ilike, regexp, startswith, endswith, contains, upper, lower": [[6, "like-ilike-regexp-startswith-endswith-contains-upper-lower"]], "limitby": [[6, "limitby"]], "list: and contains": [[6, "list-type-and-contains"]], "migrate, fake_migrate": [[6, "migrate-fake-migrate"]], "new_app command option": [[2, "new-app-command-option"]], "on_define": [[6, "on-define"]], "orderby": [[6, "orderby"]], "orderby, groupby, limitby, distinct, having, orderby_on_limitby, join, left, cache": [[6, "orderby-groupby-limitby-distinct-having-orderby-on-limitby-join-left-cache"]], "orderby_on_limitby": [[6, "orderby-on-limitby"]], "plural and singular": [[6, "plural-and-singular"]], "polymodel": [[6, "polymodel"]], "primarykey: Support for legacy tables": [[6, "primarykey-support-for-legacy-tables"]], "py4web and asyncio": [[16, "py4web-and-asyncio"]], "py4web model": [[6, "py4web-model"]], "py4web: the reference Manual": [[17, "py4web-the-reference-manual"]], "redefine": [[6, "redefine"]], "rname: Real name": [[6, "rname-real-name"]], "run command option": [[2, "run-command-option"]], "select command": [[6, "select-command"]], "sequence_name": [[6, "sequence-name"]], "set_password command option": [[2, "set-password-command-option"]], "setup command option": [[2, "setup-command-option"]], "shell command option": [[2, "shell-command-option"]], "string.format": [[16, "string-format"]], "sum, avg, min, max and len": [[6, "sum-avg-min-max-and-len"]], "table_class": [[6, "table-class"]], "trigger_name": [[6, "trigger-name"]], "try...except...else...finally": [[8, "try-except-else-finally"]], "two_factor_required": [[13, "two-factor-required"]], "two_factor_send": [[13, "two-factor-send"]], "two_factor_tries": [[13, "two-factor-tries"]], "update_or_insert": [[6, "update-or-insert"]], "update_record": [[6, "update-record"]], "utils.js": [[16, "utils-js"]], "validate_and_insert, validate_and_update": [[6, "validate-and-insert-validate-and-update"]], "version command option": [[2, "version-command-option"]], "while": [[8, "while"]], "year, month, day, hour, minutes, seconds": [[6, "year-month-day-hour-minutes-seconds"]], "\u201cAccessing OS files\u201d example": [[15, "accessing-os-files-example"]], "\u201cForm and flash\u201d example": [[15, "form-and-flash-example"]], "\u201cHello world\u201d example": [[15, "hello-world-example"]], "\u201cRedirect with variables\u201d example": [[15, "redirect-with-variables-example"]], "\u201cReturn calling methods\u201d example": [[15, "return-calling-methods-example"]], "\u201cReturning args\u201d example": [[15, "returning-args-example"]], "\u201cReturning variables\u201d example": [[15, "returning-variables-example"]], "\u201cSetting up a counter\u201d example": [[15, "setting-up-a-counter-example"]], "\u201cView\u201d example": [[15, "view-example"]], "\u201cauth\u201d example": [[15, "auth-example"]], "\u201cgrid\u201d example": [[15, "grid-example"]]}, "docnames": ["chapter-01", "chapter-02", "chapter-03", "chapter-04", "chapter-05", "chapter-06", "chapter-07", "chapter-08", "chapter-09", "chapter-1", "chapter-10", "chapter-11", "chapter-12", "chapter-13", "chapter-14", "chapter-15", "chapter-16", "index"], "envversion": {"sphinx": 61, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2}, "filenames": ["chapter-01.rst", "chapter-02.rst", "chapter-03.rst", "chapter-04.rst", "chapter-05.rst", "chapter-06.rst", "chapter-07.rst", "chapter-08.rst", "chapter-09.rst", "chapter-1.rst", "chapter-10.rst", "chapter-11.rst", "chapter-12.rst", "chapter-13.rst", "chapter-14.rst", "chapter-15.rst", "chapter-16.rst", "index.rst"], "indexentries": {}, "objects": {}, "objnames": {}, "objtypes": {}, "terms": {"": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13, 14, 16], "0": [2, 3, 5, 6, 7, 8, 10, 11, 12, 13, 14, 15, 16], "00": 7, "01": 7, "02": [6, 12], "03": [2, 6, 7], "04": 2, "04t07": 7, "05": 7, "08": 12, "0x4e86": 12, "0x7fa533ff7640": 10, "1": [2, 3, 5, 6, 7, 8, 10, 11, 12, 14, 15, 16], "10": [2, 6, 7, 8, 10, 11, 12, 13, 16], "100": [2, 6, 7, 8, 12, 16], "1000": [5, 6, 12, 16], "1000m": 16, "100px": 16, "1024": 12, "1048576": 12, "10px": 14, "11": [6, 12], "111111": 16, "11211": 5, "12": 12, "120": 6, "123": [10, 12], "123218": 7, "123456": 12, "125": 6, "127": [2, 3, 5, 12, 14], "13": [6, 12], "132635": 7, "14": [8, 12, 14], "15": [6, 12, 13, 14], "16": 12, "168": 12, "169": 12, "16px": 8, "172": [6, 12], "174": 6, "178974": 7, "19": [6, 7, 12], "192": [6, 12], "1963": 12, "198": 6, "199": 12, "19t05": 7, "1e100": 6, "1kb": 12, "1l": 6, "1mb": 12, "1pkogiy59xj8co8": 8, "2": [5, 6, 7, 8, 10, 11, 12, 13, 15, 16], "20": [2, 7, 11, 12], "200": [7, 12, 15, 16], "2001": 12, "2002": 12, "2005": 6, "2007": 0, "2008": 12, "2009": 12, "200m": 16, "200x200": 12, "2010": 6, "2012": 6, "2013": 6, "2015": 0, "2018": 6, "2019": 7, "201988": 7, "2020": 1, "20201112": 3, "2021": 7, "2022": 5, "207": 6, "217": 6, "22": 13, "227": 6, "239": 6, "2396": 12, "24": 12, "254": 12, "255": 12, "256": 6, "2616": 12, "28": 12, "2em": 16, "2px": 16, "3": [0, 2, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "30": [2, 6, 8, 12], "301": 15, "309903": 7, "31": [6, 7, 12], "32": [6, 12], "322494": 7, "32768": 6, "33": [6, 12], "34": 7, "3490": 12, "3492": 12, "35": 6, "355181": 7, "3600": [5, 6], "366288": 7, "38": 7, "3em": 16, "4": [2, 5, 6, 7, 8, 12, 14], "40": [2, 10, 16], "400": [5, 15], "404": [5, 13], "405515": 7, "43": 6, "45": [8, 12], "451907": 7, "453020": 7, "456": 12, "466030": 7, "4e": 12, "5": [5, 6, 7, 8, 11, 12, 13, 14, 16], "50": [2, 7], "500": 16, "500m": 16, "512": 6, "53": 12, "54": 8, "559918": 7, "58": 8, "59": 12, "6": [5, 6, 7, 12, 13, 15, 16], "60": [5, 6], "63": [6, 12], "6379": 5, "64": [6, 8, 16], "65": 6, "6to4": 12, "7": [2, 7, 8, 12, 15], "70": 7, "74": 6, "75": 7, "8": [2, 6, 7, 12], "80": [7, 12], "8000": [2, 3, 4, 12, 14], "86": 12, "8601": 7, "8em": [8, 16], "9": [6, 7, 12, 14, 15], "90": [6, 7], "91": 6, "95": 6, "97": 6, "974953": 7, "99": 6, "A": [2, 4, 5, 6, 7, 8, 13, 14, 15, 16, 17], "AND": 6, "AS": 6, "And": [1, 4, 5, 6, 13, 14, 16], "As": [4, 5, 6, 7, 8, 10, 12, 13, 14, 16], "At": [6, 8], "Be": [5, 6, 8], "But": [1, 2, 4, 5, 6, 8, 10, 12, 14, 16], "By": [2, 4, 5, 6, 12, 13, 15], "For": [1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "IF": 6, "IN": 6, "INTO": 6, "IT": 11, "If": [1, 2, 3, 4, 5, 6, 8, 10, 12, 13, 14, 15, 16], "In": [0, 1, 2, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "It": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 13, 16], "Its": [0, 2, 6, 12, 14], "NO": 6, "NOT": [6, 12, 13], "No": [2, 6], "Not": 6, "ON": [6, 12], "OR": [6, 10, 12, 14], "Of": 8, "On": [2, 6, 13, 16], "One": [2, 4, 12, 13], "Or": [5, 12], "That": [4, 6, 15, 16], "The": [0, 2, 8, 10, 11, 13, 15, 17], "Their": [5, 6, 15], "Then": [4, 5, 6, 10, 12, 13, 14, 16], "There": [1, 2, 5, 6, 8, 12, 13, 14, 16], "These": [0, 5, 6, 10, 12, 14], "To": [2, 4, 6, 8, 10, 11, 12, 13, 14, 16], "With": [2, 6, 12, 13, 16], "_": [2, 5, 12, 16], "__": 4, "__dict__": 5, "__file__": [5, 7, 14], "__init__": [2, 4, 5, 6, 7, 14, 15, 16], "__prerequisite__": 5, "__prerequisites__": 5, "__str__": [5, 8, 10], "_action": [10, 14], "_adapt": 6, "_after_delet": 6, "_after_insert": 6, "_after_upd": 6, "_alt": 10, "_and": 12, "_autocomplet": 16, "_autocomplete_search_field": 16, "_before_": 6, "_before_delet": 6, "_before_insert": 6, "_before_upd": 6, "_bgcolor": 10, "_c": 10, "_check": 10, "_class": [5, 10, 12, 16], "_col": 10, "_common_filt": 6, "_count": 6, "_dashboard": [2, 3], "_data": 10, "_db": 6, "_dbname": 6, "_default": [2, 4], "_delet": 6, "_disabl": 10, "_document": [1, 3], "_enable_record_vers": 6, "_extra": 6, "_format": 6, "_href": [5, 8, 10, 12, 14], "_hx": 16, "_id": [6, 10, 12, 16], "_insert": 6, "_listifi": 6, "_method": [10, 14], "_name": [6, 10, 12, 14, 16], "_next_url": 13, "_nonreserv": 6, "_onclick": 12, "_placehold": [12, 16], "_row": 10, "_scaffold": [5, 8, 10, 12, 13, 14, 15, 17], "_search": 16, "_select": [6, 10], "_sesson": 5, "_src": 10, "_style": [12, 16], "_tabl": [6, 12, 16], "_tablenam": 6, "_tag_": 13, "_time": 6, "_titl": [12, 16], "_type": [6, 10, 12, 14, 16], "_u": 10, "_updat": 6, "_uri": 6, "_valu": [10, 12, 14, 16], "_xmln": 10, "aaabaaeaaqeaaaeaiaawaaaafgaaacgaaaabaaaaagaaaaeaiaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaapaaaaaa": 8, "ab": [10, 12], "abbrevi": 12, "abc": [10, 12], "abil": 15, "abl": [1, 2, 5, 6, 12], "abort": [4, 6], "about": [0, 7, 13, 14, 15, 16, 17], "abov": [4, 5, 6, 7, 8, 12, 13, 14, 16], "abracadabra": 2, "absent": 2, "absolut": [2, 6, 15], "abspath": 4, "abstract": [5, 15, 17], "accdesc": 6, "accept": [1, 2, 4, 5, 6, 10, 11, 12, 15, 16], "access": [0, 2, 4, 5, 6, 10, 12, 13, 16], "accnum": 6, "accomplish": [5, 6, 13, 15], "accord": [6, 8], "accordingli": 8, "account": [2, 6], "acctyp": 6, "achiev": [5, 6, 15], "acknowledg": 17, "acquir": 6, "across": [6, 8], "act": [6, 10, 12], "action": [4, 5, 6, 10, 12, 15, 16, 17], "action_button": 14, "action_token": [5, 13], "activ": [2, 6, 13], "actual": [2, 5, 6, 8, 14], "ad": [0, 2, 5, 11, 12, 13, 14, 16], "adapt": [13, 16], "adapter_arg": 6, "add": [1, 2, 4, 5, 6, 7, 8, 10, 11, 12, 13, 14, 15, 16], "addit": [2, 4, 5, 6, 7, 8, 12, 14], "addition": 14, "additional_class": 14, "additional_styl": 14, "address": [2, 6, 12, 13], "admin": [0, 6, 15], "administr": 2, "advanc": [2, 13, 14, 17], "advantag": [2, 6, 8, 16], "advis": [6, 14], "affect": 6, "after": [2, 3, 5, 6, 8, 12, 13, 14, 16], "after_connect": 6, "after_delet": 6, "after_insert": 6, "after_upd": 6, "aftermath": 6, "ag": 6, "again": [2, 3, 4, 5, 6, 12, 14, 16], "against": [6, 7, 10, 12, 14], "aggreg": 6, "agnost": 4, "aid": 6, "aim": 0, "ajax": [8, 14, 16], "aka": 1, "alchemi": 6, "alert": [5, 8, 10, 12, 15], "alex": 6, "alfaro": [0, 1], "alg": 12, "algorithm": [5, 12], "alia": [6, 12], "aliv": 16, "all": [0, 1, 2, 3, 4, 5, 7, 8, 10, 11, 12, 13, 14, 15, 16], "alloc": 12, "allow": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 13, 14, 16], "allowed_act": 13, "allowed_attribut": 10, "allowed_overrid": 12, "allowed_pattern": 7, "allowed_schem": 12, "almost": 5, "along": [2, 4, 10, 12, 16], "alphabet": 12, "alphanumer": 12, "alreadi": [2, 3, 4, 5, 6, 10, 12, 13, 14], "also": [0, 1, 2, 3, 4, 5, 6, 8, 10, 12, 13, 14, 15, 16], "alt": 10, "alter": 6, "altern": [2, 5, 6, 8, 12, 16], "although": [2, 6, 8, 12], "alwai": [0, 2, 4, 5, 6, 8, 12, 16], "am": [12, 16], "amazon": 6, "ambigu": [4, 6], "among": [6, 12], "amount": 6, "an": [0, 1, 2, 3, 5, 8, 10, 12, 13, 14, 15, 16, 17], "analogi": 15, "ancestor": 10, "anchor": 16, "andrew": 1, "angl": 8, "angular": [0, 16], "ani": [1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "annoi": 2, "anonym": [6, 8, 12], "anoth": [4, 5, 8, 11, 12, 13], "anotherpath": 5, "ansi": 6, "answer": 1, "anyhow": 2, "anyobj": 6, "anyth": 4, "anywai": 6, "anywher": [8, 15], "api": [0, 6, 7, 10, 12, 13, 15, 16], "api_kei": 16, "api_vers": 7, "app": [0, 1, 3, 5, 7, 8, 10, 11, 12, 13, 14, 15, 16, 17], "app1": 5, "app1_sess": 5, "app2": 5, "app_fold": 15, "app_nam": [2, 4, 5, 6], "app_watch_handl": 4, "appadmin": [0, 6], "appar": 6, "appear": [6, 12, 14], "append": [5, 6, 10, 12, 14, 16], "append_id": 14, "appl": 12, "appli": [0, 5, 6, 12, 13, 14, 16], "applic": [0, 2, 3, 4, 5, 8, 12, 13, 14, 15, 16], "appnam": [2, 5, 13, 15], "appname_sess": 5, "approach": [6, 15], "appropri": [6, 12], "approv": 13, "apps_fold": 2, "apt": 13, "ar": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13, 14, 15, 16], "arbitrari": [4, 6, 13], "archiv": 6, "archive_db": 6, "archive_nam": 6, "aren": 6, "arg": [1, 2, 6], "argument": [2, 4, 5, 6, 8, 10, 12, 13, 15, 16], "arithmet": 12, "around": [1, 6, 15], "arrai": [10, 16], "arrang": [6, 12], "arriv": [0, 6], "as_ordered_dict": 6, "ascii": 12, "asid": [6, 16], "ask": [2, 5, 6, 16], "assert": [6, 16], "asset": 2, "assign": [6, 8, 12, 13, 15, 16], "assist": 1, "associ": [6, 11, 12, 13], "assum": [2, 5, 6, 7, 11, 12, 15, 16], "async": 16, "asynchron": 16, "asyncio": 17, "attach": [5, 6, 13, 15], "attack": [5, 10], "attempt": [12, 13], "attent": 6, "attr": [12, 14, 16], "attribut": [4, 5, 10, 12, 14, 15, 16], "attributes_plugin": 16, "attributespluginhtmx": 16, "aug": 12, "august": 12, "auth": [0, 2, 4, 6, 8, 10, 16, 17], "auth_group": 13, "auth_plugin": 13, "auth_us": [5, 6, 13, 16], "auth_user_tag_group": [6, 13], "auth_user_tagged_group": 13, "authent": [5, 6, 14, 17], "author": [5, 6, 7, 17], "auto": [6, 14], "auto_import": 6, "auto_process": [14, 16], "autocomplete_queri": 16, "autodelet": 6, "autogener": 6, "automat": [2, 3, 4, 5, 6, 8, 10, 12, 13, 14, 15, 16], "avail": [1, 2, 6, 8, 10, 13, 15, 16], "averag": 6, "avoid": [0, 1, 2, 5, 6, 8, 12], "awai": 6, "awar": 6, "awesom": [8, 14], "axel": 0, "axolotl": 0, "b": [5, 6, 8, 10, 12, 15, 16], "back": [5, 6, 12], "backend": 6, "background": [2, 4, 12, 17], "backport": 6, "backslash": 4, "backup": [2, 6, 12], "backward": [0, 6, 12], "bad_dai": 6, "bail": 6, "banana": 12, "bar": [8, 14], "barrier": 0, "base": [0, 2, 3, 4, 5, 7, 8, 12, 13, 14, 15, 16], "base64": [6, 8, 16], "base_dn": 13, "baseadapt": 6, "bash": 2, "basic": [0, 1, 2, 5, 6, 16, 17], "bat": 2, "batman": [7, 12, 14], "battl": 0, "beaslei": 0, "becaus": [0, 2, 4, 5, 6, 8, 10, 11, 12, 14, 16], "becom": [12, 16], "bed": 11, "been": [0, 2, 5, 6, 8, 12], "befor": [1, 2, 5, 6, 8, 10, 12, 13, 14], "before_delet": 6, "before_insert": 6, "before_upd": 6, "begin": [8, 12, 13, 14], "beginn": 2, "behav": [6, 14], "behavior": [4, 5, 6, 10, 12, 15, 16], "behaviour": [2, 6, 14], "being": [1, 5, 6, 7, 8, 12, 16], "believ": [0, 5], "belong": [13, 15], "below": [5, 6, 7, 12, 14], "benefit": [6, 16], "best": [1, 2, 5, 6, 11, 14], "better": [0, 1, 2, 4, 6, 14, 15, 16], "between": [5, 6, 10, 12, 15], "beyond": 12, "bgcolor": 10, "big": [6, 15], "bigint": 6, "bigint_id": 6, "bin": [1, 2], "binari": 6, "bind": 16, "birthplac": 6, "bit": 12, "bitbucket": 1, "black": [8, 12], "blank": [12, 14], "blink": 16, "blob": 6, "block": [10, 13, 16], "blockquot": 10, "blog": [1, 6, 10], "blog_post": 6, "blue": [4, 6, 12, 15], "bmp": 12, "boat": 6, "bob": 6, "bodi": [4, 8, 13, 14, 16], "boilerpl": 5, "bold": 10, "book": [1, 6], "boolean": [6, 14], "boost": [6, 8], "bootstrap": 14, "border": 16, "born": 6, "botaro": 0, "both": [1, 2, 4, 5, 6, 8, 12, 15], "bottl": [0, 4, 5, 8, 15], "bottle_app": 2, "bottleneck": 16, "bottlepi": [4, 5], "bottom": 12, "botton": 14, "boundari": 12, "box": [0, 6, 12], "br": [8, 10], "bracket": [0, 8, 12], "branch": [1, 2], "break": [2, 6, 12], "breez": 1, "briefli": 2, "broke": 0, "broken": [0, 12], "brows": [2, 3, 14, 16], "browser": [1, 2, 3, 5, 7, 8, 14, 16], "bruce": [7, 14], "bsd": 1, "buffer": 6, "bug": [1, 3, 6], "build": [1, 2, 4, 5, 6, 10, 12, 14, 16], "builder": 16, "built": [0, 1, 4, 6, 8, 12, 14, 16, 17], "bulk_insert": 6, "bulletproof": 6, "bulma": [12, 14, 16], "bunch": 2, "buse": 16, "button": [3, 4, 5, 10, 12, 16, 17], "bypass": [12, 13, 14], "byte": [6, 12], "bytecod": 8, "c": [1, 2, 3, 5, 6, 8, 10, 12, 15], "ca": 12, "cach": [0, 2, 4, 12, 17], "cache_db_select": 6, "calcul": 6, "calendar": 14, "call": [0, 1, 4, 5, 6, 7, 8, 10, 11, 12, 13, 14, 16], "callabl": [10, 12], "callback": [12, 13, 16], "callback_url": 13, "can": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13, 14, 15, 16], "cancel": [12, 16], "cancel_attr": 16, "cane": [11, 16], "cani": [11, 16], "cannot": [2, 5, 6, 8, 10, 12, 16], "capabl": [0, 14, 16], "capit": 16, "captur": 16, "car": 6, "card": 6, "care": [5, 6, 8, 15, 16], "carl": 6, "carri": 15, "carrol": 0, "cart": 5, "case": [0, 1, 2, 3, 4, 5, 8, 10, 12, 13, 14, 15, 16], "case_sensit": 6, "cassio": 0, "catch": 6, "caus": [6, 12], "caveat": [6, 8, 15, 17], "cd": 2, "cdnj": [8, 14], "celeri": 17, "center": [5, 8], "centuri": 12, "ceo": [7, 14], "certain": [6, 8, 12, 14], "certif": 2, "cf": 4, "cgi": 12, "chair": 6, "challeng": 13, "chang": [0, 1, 2, 3, 5, 6, 7, 8, 11, 12, 13, 14, 15, 16, 17], "change_email": 13, "change_password": [8, 13], "changed_fil": 4, "channel": 1, "chapter": [1, 2, 3, 4, 5, 6, 8, 10, 12, 13, 14, 15], "char": [6, 13], "charact": [4, 6, 10, 12], "charg": [2, 15], "chat": 1, "checbox": 14, "check": [1, 2, 3, 4, 5, 6, 8, 10, 12, 13, 14, 15, 16], "check_": 16, "check_reserv": 6, "checkbox": [8, 10, 17], "checkboxwidget": 12, "cherri": 12, "chicago": 6, "children": 14, "choic": [1, 4, 12, 14], "choos": [1, 6, 12, 13], "choosen": 6, "chose": 4, "chosen": 6, "chrome": [3, 16], "circular": 6, "circumst": 5, "cit0801": 7, "cit0802": 7, "cit1601": 16, "cite": [10, 12], "clark": [7, 14], "clash": 12, "class": [5, 6, 8, 10, 12, 13, 15, 16], "class_inner_except": 16, "class_styl": 14, "claudia": 6, "claus": [6, 8], "clean": [1, 10], "cleaner": 5, "cleanup": 0, "clear": [6, 12], "clearli": [6, 16], "clever": 12, "cli": [1, 2], "click": [3, 6, 10, 12, 14, 16], "clickabl": 14, "client": [0, 7, 12, 13, 16], "client_id": 13, "client_ip": 5, "client_secret": 13, "clientsid": 16, "clock": 12, "clone": [2, 4, 6, 16], "close": [5, 6, 8, 10], "closer": 6, "cloudflar": [8, 14], "cmd": 2, "cn": 13, "co": [6, 12], "coa": 6, "code": [1, 2, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "col": 10, "collaps": [7, 10], "collat": 6, "collect": [0, 2, 15], "colnam": 6, "colon": 8, "color": [4, 6, 8, 10, 12, 16], "colspan": 10, "column": [6, 17], "com": [0, 1, 3, 4, 8, 10, 13, 14, 16], "combin": [5, 10, 12, 14], "come": [0, 4, 5, 6, 8, 12, 13, 14, 15, 16], "comma": [2, 6, 16], "command": [3, 4, 8, 10, 17], "comment": [6, 10], "commit": [4, 5, 7, 14, 15, 16], "common": [2, 3, 4, 5, 8, 12, 13, 15, 16], "common_filt": 6, "commun": [0, 5, 6], "compact": 6, "compani": 14, "compar": [0, 6, 15], "comparison": [6, 12], "compat": [0, 1, 6, 10, 12], "competitor": 0, "compil": [4, 8, 10, 12], "compiled_css": 4, "complain": 6, "complet": [0, 6, 8, 10, 12, 13, 16], "complex": [1, 2, 4, 5, 6, 8, 10, 13, 15, 16], "compliant": [6, 16], "complic": 5, "compon": [0, 3, 4, 5, 8, 10, 12, 13, 16], "component_1": 16, "compos": [2, 5], "compound": 10, "compress": [3, 4], "compris": 3, "compromis": 0, "comput": [1, 16, 17], "concaten": [6, 10], "conceiv": 6, "concept": [0, 13], "concern": 6, "concurr": [0, 2, 6, 12, 16], "cond": 5, "condit": [6, 8, 12, 13, 17], "condition": 6, "config": [2, 4], "configur": [1, 2, 5, 6, 12, 13, 15, 16], "confirm": [2, 12, 13, 14, 16], "conflict": [0, 2, 4, 6], "confus": 6, "conjunct": 6, "conn": 5, "connect": [3, 4, 5, 12, 15], "connectionpool": 6, "consequ": [6, 12, 16], "consid": [5, 6, 8, 10, 12, 14, 15, 16], "consider": 6, "consist": [5, 6, 8, 14, 15], "consol": [2, 10, 13, 16], "constant": 12, "constrain": 15, "constraint": [0, 6], "construct": [4, 6], "constructor": [5, 10, 13, 17], "consult": 6, "contain": [0, 2, 3, 4, 5, 7, 8, 10, 11, 12, 13, 14, 15, 16], "contect": 8, "content": [2, 4, 5, 6, 8, 10, 12, 14, 15, 16], "content_typ": 16, "context": [3, 5, 6, 8], "contextlib": 6, "continu": [6, 8, 16], "contribut": [0, 17], "control": [2, 4, 5, 8, 10, 12, 13, 14, 15, 16], "conveni": [6, 17], "convent": [4, 6, 8, 12, 15], "convers": [12, 17], "convert": [1, 4, 6, 10, 12], "cooki": [0, 4, 6, 12, 16], "copi": [1, 2, 3, 8, 10, 14, 17], "copyfileobj": 6, "core": [1, 2, 4, 5], "corei": 1, "corner": 14, "cornerston": 0, "correct": [1, 6, 13], "correctli": 12, "correspond": [2, 3, 4, 6, 10, 11, 13, 14, 15], "corrupt": 6, "couchdb": 6, "couchdbadapt": 6, "could": [1, 2, 4, 6, 8, 10, 12, 13, 15], "count": [5, 7, 13, 14, 16], "counter": [5, 6, 16], "counterpart": 4, "coupl": [14, 16], "cours": [1, 8], "cp": 2, "creat": [0, 1, 2, 3, 5, 6, 8, 10, 12, 13, 14, 15, 16, 17], "create_form": 12, "create_th": 12, "created_bi": 6, "created_on": 6, "creation": [2, 6], "creativ": [12, 13], "credential_decod": 6, "criteria": [6, 12], "critic": 2, "cross": [5, 6, 10], "crossorigin": 8, "crt": [2, 6], "crud": [3, 12, 16], "cruz": 1, "crypt": 2, "csrf": [5, 12], "csrf_protect": 12, "csrf_session": 12, "css": [1, 4, 5, 8, 10, 12, 13, 14, 16], "csv": 15, "ct": 5, "ctrl": [2, 3], "cubrid": 6, "cubridadapt": 6, "cubriddb": 6, "current": [2, 5, 6, 8, 10, 13, 14, 15, 16], "current_record": 6, "cursor": [6, 16], "curt": 6, "custom": [0, 2, 4, 8, 15, 16, 17], "custom_check": 12, "custom_qualifi": 6, "customiz": [0, 12, 14], "cx_oracl": 6, "cyclic": 6, "czech": 11, "d": [2, 7, 10, 12], "daemon": [2, 16], "dai": 12, "dal": [2, 4, 7, 12, 13, 14, 16, 17], "dan": 0, "dancer": 13, "danger": 15, "dash": 12, "dashboard": [0, 2, 4, 5, 8, 12, 16, 17], "dashboard_mod": 2, "data": [0, 4, 5, 7, 8, 10, 12, 13, 14, 15, 16, 17], "data_label": 16, "databas": [0, 1, 3, 4, 7, 13, 14, 15, 16, 17], "datalist": 16, "date": [2, 6, 14], "datetim": [4, 5, 6, 7, 12, 16], "datetimewidget": 12, "daunt": 1, "db": [2, 3, 4, 5, 7, 10, 12, 13, 14, 15, 16], "db1": 6, "db2": 6, "db2adapt": 6, "db2ibm": 6, "db2pyodbc": 6, "db_a": 6, "db_b": 6, "db_codec": 6, "db_folder": [5, 7, 14], "db_name": 6, "db_uid": 6, "dbadmin": 4, "dbio": 12, "dbo": 6, "dbset": 12, "dbstore": 5, "dc": 13, "dd": 12, "de": [0, 1, 6, 11], "deal": [1, 6, 16], "dealfaro": 0, "debounc": 16, "debug": [2, 4, 5, 6, 8], "debugg": [1, 15], "decid": [6, 12, 14], "decim": [4, 6, 12], "declar": [0, 4, 5, 6], "decod": 6, "decode_credenti": 6, "decor": [1, 4, 6, 15, 17], "dedic": [1, 4, 5, 10, 15], "def": [4, 5, 6, 7, 10, 12, 13, 14, 15, 16], "default": [0, 2, 3, 4, 5, 7, 10, 12, 13, 14, 15, 16], "defer": [6, 16], "defin": [2, 4, 5, 8, 12, 13, 14, 15, 16], "define_t": [5, 7, 12, 13, 14, 15], "definit": [6, 7, 12, 14, 15], "degre": 6, "del": [6, 10], "delai": [6, 16], "deleg": 6, "delet": [2, 4, 7, 12, 14, 16], "delete_record": 6, "delimit": [0, 5, 6, 8, 15], "deliv": 16, "delta": 16, "demand": 6, "demo": [1, 2, 16], "deni": 7, "denorm": [6, 7], "depend": [0, 2, 3, 4, 5, 6, 8, 12, 14, 15], "deploi": 2, "deploy": 1, "deployment_tool": 2, "deprec": [6, 12, 16], "deriv": [6, 12], "desc": 14, "descend": 10, "describ": [2, 3, 4, 5, 6, 12], "descript": [6, 7, 12, 13, 14], "design": [0, 4, 6, 8, 13, 16, 17], "desir": [5, 8, 12, 13], "dest": [4, 6], "detail": [0, 1, 2, 5, 6, 7, 8, 10, 12, 14, 16], "detail_field": 12, "determin": [4, 5, 6, 8, 11, 12, 13, 14], "determinist": 5, "dev": 13, "develop": [0, 1, 4, 5, 6, 13, 14, 15, 16], "development_tool": 2, "devic": 8, "di": [0, 5], "diagram": 7, "dialect": 6, "dict": [4, 5, 6, 11, 12, 14, 15, 16], "dictionari": [4, 5, 10, 11, 15], "did": [0, 4, 6, 16], "differ": [0, 2, 5, 6, 8, 11, 12, 13, 14, 15, 16], "difficult": [2, 16], "digit": [4, 6, 12, 13], "dimens": 12, "dir": [2, 12, 16], "direct": [2, 5, 6, 8, 12], "directli": [1, 2, 4, 6, 7, 8, 10, 12, 13, 14, 16], "directori": 13, "dirnam": [5, 7, 14], "disabl": [6, 7, 10, 12, 14], "disallow": [6, 12], "discard": 6, "discord_client_id": 13, "discord_client_secret": 13, "discount": 6, "discounted_tot": 6, "discounted_total_pric": 6, "discounted_unit_pric": 6, "discov": [11, 13], "discoveri": 2, "discrimin": 13, "discuss": [1, 3, 6, 8, 10, 12], "disk": 5, "dismiss": [5, 15], "displai": [3, 4, 5, 6, 8, 10, 12, 13, 14, 16], "distinct": [8, 12], "distributed_transaction_commit": 6, "ditch": 0, "div": [4, 5, 8, 12, 14, 15, 16], "divis": [8, 10, 12], "divmod": 6, "django": [0, 1, 6, 15], "do": [1, 2, 4, 5, 6, 8, 10, 12, 13, 14, 15, 16], "do_connect": 6, "doc": [1, 16], "dockerfil": 2, "doctor": 6, "doctyp": [8, 14], "document": [3, 5, 6, 8, 10, 12, 16], "doe": [0, 2, 5, 6, 8, 12, 13, 14, 15, 16], "doesn": [5, 6, 14], "dog": [11, 12, 16], "doh": 12, "dom": [8, 17], "domain": [12, 13], "don": [1, 2, 3, 4, 6, 8, 12, 13, 14], "done": [2, 5, 6, 8, 12, 14, 15], "dot": 12, "doubl": [2, 6, 8], "doubt": 14, "down": [6, 12, 16], "downfal": 14, "download": [2, 12], "download_url": 12, "downsid": [6, 15], "dramat": 6, "driven": 0, "driver": 6, "driver_arg": 6, "drop": 12, "dropdown": [12, 14, 16], "dsn": 6, "due": [6, 7, 12], "dummi": [6, 8], "dummyrespons": 8, "dump": [5, 6, 16], "dumpfil": 6, "duplic": 6, "durabl": 7, "dure": [6, 14], "dynam": [6, 7, 8, 10, 12, 13, 17], "e": [2, 4, 5, 6, 7, 8, 10, 12, 13, 16], "each": [2, 4, 5, 6, 7, 8, 10, 11, 12, 13, 14, 15, 16], "earli": [5, 6], "earlier": 16, "easi": [0, 5, 6, 8, 10, 12], "easier": [0, 6, 7, 8], "easiest": [6, 13], "easili": [4, 5, 6, 8, 10, 12, 14], "ebook": 1, "echo": 4, "ecosystem": 16, "edg": 16, "edit": [0, 2, 3, 4, 8, 10, 12, 13, 14, 15, 16], "edit_sidecar": 16, "editor": [1, 8], "educ": 2, "effect": [3, 5, 6, 12], "effici": [0, 1, 5, 6, 15], "effort": 1, "efg": 10, "either": [6, 10, 12], "el": 10, "element": [6, 8, 10, 12, 14, 16], "els": [2, 5, 6, 12, 13, 14, 15, 16], "elsect": 14, "elt": 16, "emac": 8, "email": [2, 5, 8, 12, 13, 15, 16], "emails_onvalid": 12, "emb": 10, "embed": [5, 8, 12], "ember": 12, "emerg": 16, "emphas": 10, "employe": [5, 14], "empti": [2, 4, 6, 12, 16], "empty_regex": 12, "en": [5, 7, 16], "enabl": [1, 5, 6, 7, 10, 13, 15, 16], "enable_record_vers": 6, "encapsul": [8, 10], "enclos": [6, 8], "encod": [5, 6, 12, 16], "encrypt": [0, 2, 5], "end": [4, 6, 8, 10, 12, 13, 14, 15, 16], "endpoint": [13, 16], "enforc": [5, 6, 12, 15], "engin": [6, 12], "english": 5, "enhanc": 6, "enough": [12, 13, 14], "enqueu": 16, "enqueue_run": 16, "ensur": [6, 12], "enter": [4, 5, 10, 12, 13], "enterpris": [1, 13], "entir": [6, 8, 15, 16], "entiti": 6, "entity_quot": 6, "entri": [0, 6, 7, 11, 12, 14, 15], "entropi": 12, "env": [1, 15], "envelop": 16, "environ": [0, 1, 4, 5, 6, 15], "epub": 1, "eq": 7, "equal": [6, 7, 10, 13, 16], "equip": 5, "equival": [4, 5, 6, 10, 12, 15], "errlog": 5, "error": [1, 2, 3, 5, 6, 7, 8, 10, 12, 15, 16], "error_messag": 12, "errorlog": 2, "escap": [6, 8, 10], "especi": [0, 2, 5, 6, 12, 13], "esprima": 4, "establish": [6, 15], "etc": [4, 5, 6, 7, 11, 15], "eval": 16, "evalu": [5, 6, 7, 8, 12, 16], "even": [1, 4, 5, 6, 8, 10, 12, 14, 15, 16], "event": [2, 6, 16], "event_tim": 6, "eventu": 5, "ever": 6, "everi": [0, 2, 4, 5, 6, 13, 14, 15, 16], "everyon": [0, 1], "everyth": [2, 15, 16], "evolut": 0, "ex": 2, "exact": 15, "exactli": [5, 6, 8], "exampl": [1, 2, 3, 4, 5, 6, 8, 10, 11, 13, 17], "excel": [1, 14], "except": [2, 4, 5, 6, 10, 12, 13, 16], "excerpt": 8, "exclud": 12, "exclus": [0, 5, 6, 12, 13], "execut": [1, 2, 5, 6, 8, 10, 12, 15, 16], "exercis": [5, 13], "exist": [2, 5, 6, 12, 13, 14, 16], "exit": [2, 5], "exp": [4, 6], "expand": [1, 3], "expect": [2, 4, 5, 6, 10, 12, 15], "experi": [1, 12, 13], "experienc": 0, "experiment": [2, 5], "expir": [5, 6], "explain": [4, 5, 6, 12, 14], "explanatori": 6, "explicit": [0, 2, 4, 5, 6, 12, 13], "explicitli": [0, 2, 5, 6, 8, 10, 12, 16], "explict": 6, "explor": 3, "export": 17, "export_to_csv_fil": 6, "expos": [0, 3, 4, 5, 6, 7, 13], "express": [4, 7, 8, 10, 11, 12, 14, 16], "extend": [0, 5, 6, 12, 13, 15, 16], "extens": [3, 6, 12, 15], "extern": [2, 6], "extra": [5, 6, 12, 13], "extra_field": 5, "extract": [6, 12, 16], "f": [6, 13, 14, 15, 16], "fa": 14, "face": [1, 6], "facebook": [0, 5], "facilit": 4, "fact": [4, 5, 6, 15], "factori": [5, 6, 10], "fail": [3, 6, 8, 12, 16], "failur": [4, 12, 16], "fake": 6, "fake_migrate_al": 6, "fall": 12, "fals": [2, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "famou": [1, 6], "fanci": 16, "far": [6, 16], "fast": [0, 4, 16], "faster": [0, 6, 8, 15], "father": 6, "father_id": 6, "favorite_color": 5, "fb00": 12, "fdb": 6, "fe80": 12, "feasibl": [2, 12], "featur": [0, 2, 4, 7, 8, 15, 17], "februari": 5, "feed": 6, "fetch": [15, 16], "fetchon": 6, "few": [6, 8, 13, 16], "ff00": 12, "fid": 6, "field": [2, 4, 5, 7, 10, 13, 15, 16, 17], "field1": 6, "field2": 6, "field3": 6, "field_id": 14, "fieldnam": [6, 16], "fieldstorag": 12, "fifth": 14, "file": [0, 1, 2, 3, 5, 6, 8, 10, 13, 14, 16, 17], "file_cont": [6, 16], "file_nam": [6, 16], "file_path": 15, "filenam": [2, 4, 5, 6, 12], "filep": 4, "filepath": 4, "filesystem": [0, 4, 5, 6], "fileuploadwidget": 12, "fill": [12, 16], "filter": [2, 4, 7, 12, 13], "filter_in": 12, "filter_out": 14, "final": [1, 2, 4, 6, 11, 14], "find": [1, 2, 4, 8, 11, 12, 13, 14, 16], "find_by_tag": 13, "find_match": 11, "findal": 12, "fine": [2, 13, 14], "fire": 6, "firebird": 6, "firebird_embed": 6, "firebirdadapt": 6, "firebirdembed": 6, "firebirdembeddedadapt": 6, "firefox": [3, 16], "firfox": 16, "first": [0, 3, 5, 7, 8, 10, 12, 13, 14, 15, 16, 17], "first_nam": [4, 5, 13, 14], "first_onli": 10, "first_row": 6, "first_row_dict": 6, "fist": 12, "fit": 12, "five": 6, "fix": [5, 15], "fixtur": [0, 2, 4, 6, 10, 13, 15, 17], "fk_field": 16, "fk_tabl": 16, "fkdaog": 8, "flag": 12, "flash": [8, 12, 16, 17], "flask": [0, 15], "flexibl": [0, 6, 13, 14, 16], "flight": 7, "float": [4, 12], "flow": 13, "fn": 2, "focu": 16, "fold": 6, "folder": [1, 2, 3, 4, 5, 7, 11, 12, 14, 15], "follow": [1, 2, 4, 5, 6, 7, 8, 10, 11, 12, 13, 14, 15, 16], "font": [8, 12, 14], "foo": 14, "foot": 13, "footer": [8, 10], "forbid": 12, "forbidden": 12, "forc": [2, 5, 6, 12, 13], "foreground": 12, "foreign": [1, 14], "foreign_key_check": 6, "forgeri": 5, "forget": [6, 14], "form": [0, 5, 6, 7, 11, 13, 14, 17], "form_bas": 12, "form_custom_widget": 12, "form_exampl": 12, "form_minim": 12, "form_nam": 12, "form_widget": 12, "format": [4, 5, 7, 10, 11, 13, 14], "formatt": 16, "formdata": 7, "former": 6, "formstyl": [12, 14, 16], "formstylebootstrap4": 12, "formstylebulma": [12, 14, 16], "formstyledefault": [12, 14], "formstylefactori": 16, "forum": 3, "forward": [1, 3], "found": [2, 6, 12], "four": [2, 6], "fourth": 12, "fp": 5, "fr": 11, "framework": [0, 1, 2, 4, 5, 6, 12, 13, 14, 15, 16], "free": [1, 5, 6, 13], "freetext": 16, "frequent": [1, 6, 12], "friendli": [0, 5, 8], "from": [0, 1, 3, 5, 7, 8, 10, 11, 12, 13, 14, 16, 17], "from_add": 16, "from_addr": 16, "from_address": 13, "from_email": 16, "front": [0, 8, 12, 16], "frontend": 16, "fsstorag": 5, "ftp": 12, "full": [2, 4, 6, 8, 12, 14, 16], "fulli": [1, 4, 5, 6, 12], "fullnam": 6, "func": [2, 5], "function": [0, 2, 4, 5, 6, 7, 10, 14, 15, 16], "functool": 16, "furnitur": 5, "further": 13, "futur": [5, 15, 16], "g": [1, 2, 6, 10, 12], "gain": 2, "gather": 14, "gavgavian": 1, "gender": 6, "gener": [0, 1, 2, 4, 5, 7, 8, 10, 12, 13, 14, 15, 16], "german": 11, "get": [1, 2, 4, 5, 6, 8, 12, 13, 14, 15, 16, 17], "get_cooki": 16, "get_us": [4, 5, 13, 15], "get_var": [7, 15], "getvalu": 6, "gevent": [1, 2], "geventw": 2, "geventwebsocketserv": 2, "gia": 5, "gib": 6, "gif": 12, "git": [1, 2], "github": [2, 3, 4, 6, 14], "gitlat": 1, "give": [0, 2, 4, 5, 6, 8, 13, 14], "given": [2, 5, 6, 8, 12, 16], "global": [0, 5, 6, 8, 13, 15, 16], "go": [1, 2, 4, 6, 8, 14, 16], "goal": 0, "goe": [6, 12], "good": [2, 3, 12], "googl": [0, 3, 5, 8, 12, 14], "googledatastor": 6, "googledatastoreadapt": 6, "googlemysql": 6, "googlepostgr": 6, "googlesql": 6, "googlesqladapt": 6, "gotcha": 17, "gotta": 8, "granular": 6, "granulari": 12, "graphic": 6, "graphql": 7, "great": 16, "greater": 7, "greedi": 4, "green": [4, 6, 12, 15], "grid": [0, 17], "grid_class_styl": 14, "grid_tutori": 14, "gridactionbutton": 14, "gridclassstyl": 14, "gridclassstylebulma": 14, "group": [0, 2, 3, 5, 13, 15], "group_nam": [5, 13], "groupbi": 12, "grow": [0, 6, 16], "gt": [7, 10], "guarante": [5, 6, 8, 15, 16], "guid": 2, "guidelin": 13, "gunicorn": 2, "gunicorngev": 2, "gz": 12, "h": [2, 12], "h1": [4, 8], "h2": [8, 12], "ha": [0, 2, 4, 5, 6, 7, 8, 10, 11, 12, 13, 14, 15, 16], "habit": 2, "had": 6, "hamburg": 8, "hand": [2, 6, 16], "handi": 6, "handl": [2, 4, 5, 6, 12, 14, 15, 16], "handler": 4, "hang": 1, "happen": [5, 6], "hard": 15, "hardcod": 5, "has_membership": 13, "hash": [2, 6, 12], "have": [0, 1, 2, 3, 4, 5, 7, 8, 10, 12, 13, 14, 15, 16], "he": 6, "head": [4, 8, 12, 14], "header": [4, 5, 6, 8, 10, 14, 16], "height": [12, 14, 16], "hello": [4, 5, 6, 8, 10, 12, 13, 16], "help": [2, 6, 7, 8, 10, 12, 15, 17], "helper": [0, 4, 5, 6, 8, 12, 14, 15, 16, 17], "henc": [0, 2, 4, 5, 6, 12], "her": 12, "here": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13, 14, 16], "hesit": 6, "hex": 12, "hh": 12, "hi": [6, 12, 16], "hidden": [6, 12, 16], "hidden_div": 16, "hidden_input": 16, "hide": [6, 14], "hierarch": [6, 13], "high": [12, 13], "higher": 6, "highest": 12, "highli": [1, 14], "highlight": [1, 8], "hint": [14, 17], "histor": [0, 6], "histori": 12, "hit": [2, 6], "hmac": 12, "ho": 5, "hold": [6, 16], "home": 8, "host": [1, 2, 5, 12, 13], "hour": 12, "hous": 15, "housekeep": 6, "how": [0, 2, 4, 5, 6, 7, 8, 12, 13, 14, 15, 16, 17], "howev": [6, 8, 10, 12, 14, 16], "href": [8, 10, 13, 14], "hs256": 5, "html": [1, 4, 5, 7, 8, 11, 12, 13, 14, 15, 16], "html5": 8, "htmx": [14, 17], "htmx_form": 16, "htmx_form_demo": 16, "htmx_grid": 16, "htmx_list": 16, "htmxautocompletewidget": 16, "http": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13, 14, 15, 16], "httrespons": 5, "hulk": 12, "hundr": 16, "hx": 16, "hypertext": 16, "hyphen": 10, "i": [1, 2, 3, 4, 5, 6, 7, 8, 11, 12, 13, 14, 15, 16, 17], "i18n": 11, "ibm_db_dbi": 6, "icon": [8, 14], "id": [0, 1, 2, 3, 5, 7, 8, 10, 12, 13, 14, 15, 16], "id1": 6, "id2": 6, "id_field_nam": 14, "id_valu": 14, "idea": 6, "ident": [6, 7, 15], "identifi": [4, 5, 6, 10, 12], "idn": 12, "ie": 12, "ietf": 12, "ifram": 12, "ignor": [4, 5, 6, 8, 10, 12, 14, 16], "ignore_attribute_plugin": 14, "ignore_common_filt": [6, 12], "ignore_field_cas": 6, "iip": 6, "illustr": [6, 8], "imag": [6, 8, 10, 12], "image_fil": 6, "imagin": [5, 6, 8, 16], "imap": 6, "imapadapt": 6, "imaplib": 6, "img": [4, 12], "immedi": [2, 6, 14], "immens": 0, "implement": [4, 5, 6, 8, 12, 13, 15, 16], "impli": 7, "implic": 5, "implicit": 6, "implicitli": [6, 12], "implictli": 6, "import": [0, 1, 2, 4, 5, 7, 8, 10, 11, 12, 13, 14, 15, 16, 17], "import_and_sync": 6, "import_from_csv_fil": 6, "impos": 8, "impot": 12, "improv": [12, 13, 14], "includ": [0, 4, 5, 6, 7, 10, 12, 14, 15, 16], "include_action_button_text": 14, "include_path": 4, "inclus": [0, 12], "incom": 2, "incorrect": 8, "increas": 5, "increment": 6, "inde": [0, 5], "indent": 8, "independ": [0, 5, 6, 13], "index": [1, 2, 4, 5, 7, 8, 10, 12, 13, 14, 15, 16, 17], "indic": [4, 6, 12, 15, 16], "individu": [0, 2, 5, 6, 7, 8, 12], "ineffici": [5, 6], "infinit": 6, "info": [2, 4, 5, 6, 13], "inform": [1, 5, 6, 7, 12, 13, 15, 17], "informix": 6, "informixadapt": 6, "informixdb": 6, "informixs": 6, "ingr": 6, "ingredi": 4, "ingresadapt": 6, "ingresdbi": 6, "ingresu": 6, "ingresunicod": 6, "ingresunicodeadapt": 6, "init": 14, "initi": [0, 2, 4, 5, 8, 12], "inject": [6, 8, 12, 14, 17], "inlin": [10, 16], "inner": [5, 8, 16], "input": [2, 4, 5, 6, 8, 12, 14, 16], "insensit": [6, 12], "insert": [3, 5, 7, 8, 12, 13, 14, 16], "insid": [1, 2, 4, 5, 6, 8, 10, 12, 14, 15, 16], "inspector": 8, "inspir": 7, "instal": [0, 1, 3, 4, 5, 6, 13, 16, 17], "instanc": [5, 6, 10, 12, 14, 16], "instanti": [6, 13, 14, 15], "instead": [1, 4, 5, 6, 8, 10, 12, 13, 14, 15, 16], "instruct": [2, 12], "int": [4, 6, 12, 13, 15], "int2ip": 6, "integ": [2, 4, 6, 7, 10, 12, 16], "integr": [0, 1, 8, 16], "intend": [6, 16], "intention": 12, "interact": [0, 5], "interchang": 13, "interfac": [0, 3, 5, 6, 14, 15, 16], "intermedi": 6, "intern": [0, 1, 4, 5, 6, 8, 13, 14], "internation": [0, 4, 5, 12, 15, 17], "interpret": [0, 6, 7, 10], "intersect": 6, "introduc": [0, 8], "introduct": [1, 2, 17], "intuit": 12, "invalid": [2, 5, 6, 12], "invert": [6, 12], "invis": 6, "involv": [6, 8, 14, 15], "io": [2, 6], "ip": [2, 6, 12], "ip2int": 6, "ip_list": 13, "ipaddr": 6, "ipaddress": 13, "iptabl": 2, "ipv4": [6, 12], "ipv4address": 13, "ipv4network": 13, "ipv6": 12, "is_6to4": 12, "is_act": 6, "is_automat": 12, "is_dat": 6, "is_datetim": 6, "is_decimal_in_rang": 6, "is_empty_or": 6, "is_float_in_rang": 6, "is_imperson": 13, "is_in_db": [6, 14], "is_in_set": 6, "is_int_in_rang": 6, "is_json": 6, "is_length": 6, "is_link_loc": 12, "is_localhost": 12, "is_multicast": 12, "is_not_empti": 6, "is_null_or": 14, "is_priv": 12, "is_publ": 6, "is_reserv": 12, "is_rout": 12, "is_teredo": 12, "is_tim": 6, "isdir": [7, 14], "isn": [12, 14], "iso": 7, "isol": 16, "issu": [0, 3, 6], "ital": 10, "italian": [5, 11], "item": [6, 7, 8, 10, 12], "itemize1": 8, "itemize2": 8, "iter": [8, 12], "iterselect": 6, "its": [0, 1, 2, 3, 4, 5, 6, 8, 10, 12, 13, 14, 15, 16], "itself": [2, 6, 12, 16], "iv": 6, "j": [0, 4, 5, 8, 11, 15, 17], "javascript": [1, 4, 7, 10, 16], "jdbc": 6, "jdbcpostgr": 6, "jdbcpostgresqladapt": 6, "jdbcsqlite": 6, "jdbcsqliteadapt": 6, "jetbrain": 1, "jim": [0, 1, 14], "jinja2": 5, "job": [7, 12, 14], "john": [0, 6], "join": [4, 5, 7, 12, 13, 14, 15, 17], "jonathan": 6, "journalist": [7, 14], "journei": 1, "jpeg": 12, "jpg": 12, "jpsteil": 14, "jqueri": [10, 12, 16], "jsl": 16, "json": [0, 1, 2, 4, 5, 6, 7, 11, 12, 15, 16], "jump": 1, "junk": 6, "just": [1, 2, 4, 5, 6, 7, 8, 12, 14, 16], "jwt": 5, "jython": 6, "k": [5, 8, 15], "karg": 10, "kbyte": 5, "keep": [1, 2, 4, 5, 6, 7, 8, 10, 12, 14, 15], "keep_valu": 12, "kei": [2, 4, 5, 7, 10, 11, 12, 13, 16, 17], "keller": 0, "ken": 6, "kent": [7, 14], "kevin": 0, "keycod": 16, "keyup": 16, "keyword": [8, 10], "kfield": 16, "kill": 16, "kind": [0, 4], "kinterbasdb": 6, "know": [1, 2, 5, 6, 8, 14], "knowledg": 1, "known": [6, 8], "known_express": 11, "ktabl": 16, "kwarg": [6, 16], "ky8iq0g4b3cyey6wyhn3yt9pw0xpsrivlkmxe40ptknxrlnz9": 8, "l": [2, 12], "label": [6, 7, 8, 12, 14, 15, 16], "lack": [6, 12, 15], "lambda": [5, 6, 10, 12, 13, 14, 16], "lang": 5, "languag": [0, 1, 4, 5, 11, 15, 16, 17], "larg": [6, 12], "larger": 0, "last": [1, 5, 8, 12, 13, 14, 16], "last_insert_id": 6, "last_nam": [5, 13, 14], "last_row": 6, "lastdot": 12, "lastrowid": 6, "later": [1, 2, 4, 5, 6, 8, 10, 12, 13, 14], "latest": [2, 6, 15], "latin1": 6, "latter": [6, 12, 15], "launch": [1, 2], "launcher": 1, "lax": 5, "layer": [5, 15, 17], "layout": [12, 13, 14, 15, 16, 17], "lazi": [2, 4, 15], "lazili": 16, "lazy_t": 6, "lazy_total_pric": 6, "ldap": [0, 5], "ldap_plugin": 13, "ldap_set": 13, "ldapplugin": 13, "lead": 14, "leader": 16, "learn": [1, 6], "least": [1, 2, 6, 12, 15, 16], "leav": [5, 6, 13], "left": [8, 12, 14, 16], "len": [12, 16], "length": [6, 12], "less": [7, 12, 15, 16], "let": [2, 6, 7, 12, 16], "letter": 12, "level": [2, 6, 7, 11, 12, 13], "leverag": 0, "li": [8, 12, 13, 16], "lib": [2, 8, 10, 14], "libldap2": 13, "librari": [0, 2, 4, 6, 11, 12, 13, 15, 16], "libsasl2": 13, "libsass": 4, "licens": 1, "life": 16, "lifespan": 12, "lifetim": 5, "lighter": [6, 15], "like": [0, 1, 2, 3, 4, 5, 7, 8, 10, 11, 12, 13, 14, 15, 16], "limit": [0, 2, 5, 6, 7, 8, 12, 13, 15, 16], "line": [4, 5, 6, 7, 8, 10, 12, 13, 14, 16, 17], "link": [2, 6, 7, 8, 10, 12, 13, 14, 16], "lint": 1, "linux": 2, "list": [0, 1, 2, 4, 5, 7, 8, 10, 12, 13, 14, 16], "list_of_field": 6, "listabl": 6, "listen": [2, 3], "listproperti": 6, "liststringproperti": 6, "listwidget": 12, "littl": [1, 5, 6], "live": [6, 16], "ll": [1, 2, 3, 5, 6, 8, 12, 14, 16], "load": [3, 4, 5, 6, 8, 14, 16], "loazkji": 8, "local": [3, 5, 6, 12, 13, 14, 15], "localhost": [2, 4, 5, 6, 12], "locat": [2, 4, 8, 15], "lock": [5, 6, 16], "log": [2, 3, 4, 5, 6, 8, 10, 13, 15, 16], "logerror": 5, "logfil": 6, "logging_level": 2, "logic": [2, 5, 12, 13, 14, 15, 16], "login": [0, 2, 4, 5, 6, 8, 12, 13, 15, 17], "logo": [0, 8, 10], "logout": [0, 8, 13], "long": [0, 2, 12, 16], "longer": [0, 6], "longhash_tablenam": 6, "longtext": 6, "look": [2, 3, 5, 6, 7, 10, 12, 13], "lookup": [5, 7, 12], "loop": [6, 8, 16], "lose": [6, 12], "lost": [1, 5, 6, 15], "lot": [1, 4, 6], "love": 0, "low": 0, "lower": 12, "lowercas": 12, "lowest": 12, "lru": 5, "lt": [2, 10], "luca": [0, 1], "m": [0, 2, 6, 10, 12], "mac": 6, "machin": [2, 6], "macneiln": 2, "maco": 2, "made": [1, 2, 6, 8, 12, 14], "magic": 0, "mai": [2, 4, 5, 6, 8, 10, 12, 14, 15, 16], "mail": [1, 3, 6, 12, 16], "mailto": 12, "main": [0, 1, 2, 4, 6, 8, 14, 15, 16, 17], "maintain": [6, 8, 14, 16], "mainten": 16, "major": 6, "make": [0, 1, 2, 5, 8, 10, 11, 12, 13, 14, 15, 16], "makefil": 2, "man": 16, "manag": [0, 1, 2, 3, 4, 5, 6, 12, 13, 14, 16], "mandatori": [5, 6, 8], "mani": [0, 1, 2, 4, 5, 7, 8, 12, 14, 15, 16], "manipul": 6, "manner": [5, 15], "manual": [2, 3, 4, 6, 10, 13, 14], "map": [2, 4, 6, 10, 11, 12, 15], "map_non": 6, "marco": 6, "margin": [8, 16], "mark": [6, 13], "massimo": [0, 6], "master": [1, 2, 6, 14], "match": [2, 4, 5, 6, 7, 8, 10, 11, 12, 16], "materi": 6, "math": 16, "mathemat": 6, "matter": 15, "max": [11, 12, 16], "max_concurrent_run": 16, "maximum": [5, 6, 12], "maxip": 12, "maxlen": 12, "maxsiz": 12, "mayb": [2, 5], "md5": 12, "me": [10, 12, 14, 16], "mean": [1, 2, 3, 5, 6, 8, 12, 13, 15, 16], "mechan": [0, 5, 6, 8, 10, 13, 15, 16], "meet": 6, "member": [12, 13], "membership": [0, 5, 12, 13, 15], "memcach": [0, 6], "memoiz": 17, "memori": 5, "mention": [5, 13, 16], "menu": [8, 12, 13], "merg": 6, "mess": 1, "messag": [2, 4, 5, 7, 8, 12, 14, 15, 17], "met": 6, "meta": [8, 10], "metadata": 6, "metatag": 10, "method": [4, 5, 7, 8, 10, 12, 13, 14, 16, 17], "mfa": 13, "micah": 0, "microsoft": [1, 13], "mid": 6, "middlewar": 5, "might": [7, 12], "migrat": [15, 17], "migrate_en": 6, "mileston": 1, "min": [8, 12, 14], "min_length": 12, "mind": [1, 4, 6, 7, 8, 12], "minim": [5, 14, 17], "minimalist": [8, 15], "minimalist_pag": 8, "minimum": [6, 12], "minip": 12, "minor": [8, 12, 15], "minsiz": 12, "minut": 12, "miss": [2, 13, 14], "mistak": 2, "mix": 8, "mkdir": [2, 4, 7, 14], "mm": 12, "mode": [2, 4, 5, 12, 13], "model": [0, 3, 4, 7, 10, 12, 14, 15, 16], "modern": [6, 13, 16], "modif": [2, 12], "modifi": [2, 4, 6, 7, 8, 12, 14, 15, 16], "modified_bi": 6, "modified_on": 6, "modul": [0, 1, 2, 4, 5, 6, 8, 10, 12, 13, 14, 15, 17], "modular": [0, 6, 8, 15], "moment": 6, "mongo": 6, "mongodb": 6, "mongodbadapt": 6, "monkei": 5, "monolith": 0, "monospac": 10, "month": 12, "more": [0, 1, 2, 4, 5, 7, 8, 10, 12, 13, 14, 15, 16], "moreov": [6, 16], "most": [0, 3, 4, 5, 6, 12, 13, 14, 15, 16], "mostli": 5, "mother": 6, "mother_id": 6, "mount": 13, "move": 6, "mssql1": 6, "mssql1n": 6, "mssql2": 6, "mssql2adapt": 6, "mssql3": 6, "mssql3adapt": 6, "mssql3n": 6, "mssql4": 6, "mssql4adapt": 6, "mssql4n": 6, "mssqladapt": 6, "mssqln": 6, "mtabl": 0, "much": [0, 1, 4, 5, 6, 8, 12, 14, 15, 16], "multi": [1, 2, 6, 15], "multicast": 12, "multipl": [0, 1, 2, 4, 6, 8, 10, 11, 12, 15, 16, 17], "multiprocess": 5, "multiselect": 12, "multius": 13, "must": [1, 2, 3, 4, 5, 6, 8, 10, 12, 13, 14, 15, 16], "my": [5, 8, 10, 12, 13, 16], "my_app": 4, "my_id": 16, "my_password_fil": 2, "my_task": 16, "my_url_path": 15, "my_var": [5, 10], "myapp": [2, 4], "myclass": 10, "mycompon": 16, "mycustomwidget": 12, "mydb": 6, "myerror": 5, "myfield": 6, "myfil": 6, "myfixtur": 5, "myfunct": 2, "myidx": 6, "myobj": 6, "myobjnam": 6, "myorder": 6, "myqueri": 6, "myrecord": 6, "mysaltvalu": 12, "mysendgridsend": 16, "myset": 6, "mysidebar": 8, "mysqladapt": 6, "mysqldb": 6, "mysqldv": 6, "mystyl": 12, "mytabl": 6, "myvalu": 6, "myvirtualfield": 6, "myvirtualfields1": 6, "myvirtualfields2": 6, "n": [5, 6, 11, 16], "name": [2, 4, 5, 7, 8, 10, 12, 13, 14, 15, 16], "nameonli": 6, "narrow": 6, "nativ": 6, "native_json": 12, "nav": 8, "navbar": [8, 13], "navig": [8, 14, 16], "ndb": 6, "ne6fz": 8, "necessari": [6, 8, 10], "need": [0, 1, 2, 4, 5, 6, 8, 10, 12, 13, 14, 15, 16], "neg": [6, 12], "negat": 6, "neither": [6, 12], "nest": [6, 8, 10], "nested_select": 6, "network": [6, 12, 13], "never": [5, 6, 8, 12, 15, 16], "nevertheless": 6, "new": [0, 1, 2, 3, 4, 5, 7, 8, 10, 11, 12, 13, 14, 15, 16], "new_app": [8, 10], "new_password": 16, "new_sidecar": 16, "newer": 8, "newli": [4, 6, 11], "newlin": [6, 12], "next": [1, 2, 5, 6, 8, 12, 16], "nginx": 2, "nice": 10, "nicer": 16, "nico": 0, "nid": 6, "no_backslash_escap": 6, "no_tabl": [12, 16], "node": [4, 16], "non": [4, 5, 6, 12, 14, 15], "none": [2, 5, 6, 7, 10, 12, 14, 15, 16], "nor": [2, 6, 12], "normal": [2, 4, 5, 6, 8, 10, 12, 14, 16], "northwind": 1, "nosqladapt": 6, "not_author": 13, "notat": [6, 10], "note": [1, 2, 5, 8, 10, 12, 15, 16], "noth": [2, 5, 6, 12, 16], "notic": [2, 4, 5, 6, 8, 10, 12, 13, 14, 15, 16], "notnul": 6, "notset": 2, "now": [0, 2, 4, 5, 6, 8, 12, 14, 16], "nowadai": 1, "null": [6, 7, 12, 16], "num": 6, "number": [2, 4, 5, 6, 8, 11, 12, 14, 16], "number_work": 2, "numer": [6, 12], "o": [4, 5, 7, 12, 14], "oauth": 13, "oauth2": [0, 5], "oauth2discord": 13, "oauth2facebook": 13, "oauth2googl": 13, "obj": [6, 8], "object": [0, 5, 6, 7, 8, 10, 11, 12, 15, 17], "observ": 6, "obtain": [2, 4, 6, 13, 16], "obviou": [6, 7, 8, 13], "obvious": [6, 12], "occasion": [6, 12], "occur": [2, 6, 8, 12, 16], "odd": [6, 8], "off": [0, 2, 4, 6, 14, 16], "offici": [0, 6, 12, 16], "offset": [6, 7], "often": [4, 6, 13, 16], "ok": [10, 15], "old": [2, 5, 12, 15], "older": 12, "ombott": [0, 4, 15], "omit": 2, "on_delete_act": 6, "on_error": 5, "on_fals": 5, "on_request": 5, "on_success": 5, "onc": [1, 2, 5, 10, 12, 13, 14, 16], "onclick": 16, "ondelet": 6, "one": [0, 2, 3, 4, 5, 7, 8, 11, 12, 13, 14, 16], "ones": [2, 5, 6, 7, 12, 15], "onion": 5, "onkeydown": 16, "onli": [1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "onlin": [1, 6], "onload": 16, "onvalid": 12, "onward": 6, "opac": 16, "open": [1, 2, 3, 4, 5, 6, 10], "oper": [0, 3, 5, 11, 12, 13, 17], "operationalerror": 12, "oppos": [5, 6, 10], "opposit": [5, 6], "oprow": 6, "optim": [4, 6], "optimis": 6, "option": [0, 3, 4, 5, 6, 7, 8, 13, 14, 15, 16, 17], "oracleadapt": 6, "order": [1, 2, 4, 5, 6, 7, 10, 12, 14, 15], "order_item": 6, "orderbi": [12, 13, 14, 16], "ordereddict": 6, "org": [7, 10, 16], "organ": 4, "origin": [6, 8, 10, 11, 12], "orm": 6, "other": [0, 1, 2, 4, 5, 7, 8, 10, 11, 13, 14, 15, 16, 17], "other_pag": [12, 16], "otherfield": 6, "othert": 6, "otherwis": [5, 6, 8, 12, 13, 14], "oufil": 6, "our": [0, 1, 2, 4, 5, 6, 10, 12, 16], "out": [0, 1, 2, 6, 8, 16], "outer": [5, 12, 16], "outlin": [4, 5], "output": [1, 2, 4, 5, 6, 7, 8, 10, 12, 16], "output_styl": 4, "outsid": [0, 5, 6, 12, 14, 15, 16], "ov": 6, "over": [6, 8, 14, 16], "overcom": 6, "overhead": 6, "overkil": 13, "overload": 6, "overrid": [4, 6, 8, 10, 13, 14, 15, 16], "override_class": 14, "override_styl": 14, "overview": 17, "overwritten": [5, 15], "own": [4, 5, 6, 8, 12, 13, 14, 15, 16], "owner": [6, 12], "owner_id": 6, "owner_id1": 6, "owner_id2": 6, "ownership": 6, "p": [2, 8, 12], "p10n": 11, "packag": [0, 6, 10], "pad": [8, 15, 16], "page": [1, 5, 6, 10, 12, 13, 14, 15, 16, 17], "page_head": 8, "page_left_menu": 8, "page_script": 8, "pagin": [6, 14], "paint": [4, 12], "pair": [6, 10], "pam": [0, 5], "pam_plugin": 13, "pamplugin": 13, "paragraph": [1, 5, 10, 12, 14], "param": [12, 13, 14, 15, 16], "paramet": [1, 2, 4, 5, 13, 16], "parent": [2, 6, 8, 16], "parenthes": 6, "park": [7, 14], "pars": [4, 5, 6, 11, 12, 13], "parsemodul": 4, "parser": 6, "part": [6, 10, 12, 15], "parti": [0, 5], "partial": [4, 6, 15], "particip": 1, "particular": [0, 1, 6, 12, 14, 15, 16], "particularli": 6, "pass": [2, 4, 5, 6, 8, 10, 12, 13, 14, 15, 16], "passphras": 5, "password": [0, 2, 3, 5, 6, 8, 12, 13, 15, 16], "password_fil": 2, "passwordwidget": 12, "patch": 5, "path": [2, 4, 5, 6, 7, 11, 12, 14, 15, 16], "path_to": 2, "pattern": [4, 7], "paus": 2, "payment": 6, "payrol": 5, "pbkdf2": 12, "pc": 3, "pdf": [1, 12], "pdkdf2": 2, "per": [0, 4, 5, 7, 14], "perahp": 5, "percent": 6, "percentag": 6, "perfect": 0, "perfectli": 14, "perform": [0, 3, 5, 6, 12, 13, 15], "period": 16, "permiss": [0, 5, 6, 15], "permit": 6, "permitted_tag": 10, "persist": [5, 6, 13], "person": [2, 6, 7, 12, 14], "persons_and_th": 6, "perspect": 0, "pet": 6, "peter": [7, 14], "phase": 6, "philip": 6, "phone": [12, 16], "photograph": [7, 14], "phrase": 6, "physic": 13, "pick": [4, 5, 13], "piec": [0, 5, 6, 8, 12], "pierro": 0, "pip": [0, 1, 6], "pirsch": 0, "piu": 5, "pixel": 12, "place": [1, 5, 6, 8, 12, 14, 16], "placehold": [6, 11, 12, 16], "plai": [0, 16], "plain": [6, 16], "plan": [1, 16], "platform": [0, 1, 17], "pleas": [5, 6], "plu": [6, 8, 13, 14], "plugin": [4, 5, 12, 14, 16], "plural": [0, 4, 5, 14, 15, 16, 17], "pm": 12, "png": [10, 12], "point": [2, 3, 4, 5, 6, 7, 8, 12, 14, 15], "pointer": 16, "pointless": 6, "polici": [0, 17], "pollut": 5, "pool": [4, 5], "pool_connect": 6, "pool_siz": [5, 6], "poor": 16, "pop": 16, "popul": 6, "popular": [0, 6], "port": [0, 2, 3, 5, 6, 15], "portabl": 6, "portion": 14, "posit": [5, 10], "possibl": [4, 5, 6, 8, 12, 14, 15, 16], "possibli": 6, "post": [4, 6, 7, 10, 12, 13, 14, 15, 16], "post_action_button": 14, "post_text": 6, "post_var": [7, 15], "post_writ": 7, "postel": 11, "postel\u00ed": 11, "postfix": 15, "postgr": 6, "postgreboolean": 6, "postgrenew": 6, "postgrepsyco": 6, "postgrepsycoboolean": 6, "postgrepsyconew": 6, "postgres2": 6, "postgres3": 6, "postgres_nonreserv": 6, "postgresql": [2, 6], "postgresqladapt": 6, "postprocess": 15, "potenti": 2, "power": [2, 6, 7, 13, 15, 16], "pprint": 6, "pr": 1, "practic": [0, 6, 8, 12, 15, 17], "pre": [2, 4, 5, 6, 14], "pre_action_button": 14, "precaut": 2, "preced": [5, 6, 7, 8, 12], "preciou": 14, "predefin": [8, 12, 16], "predetermin": 15, "prefer": [2, 5, 6, 10, 16], "prefix": [2, 4, 6, 7, 8, 12, 15], "preliminari": 1, "prepend": [4, 7, 12, 15, 16], "prepend_schem": 12, "preprocess": 15, "prerequisit": [5, 17], "presenc": [5, 6], "present": [2, 6, 8, 12, 13], "preserv": [0, 5], "press": [3, 4, 14], "pretti": [4, 6, 15], "prevent": [2, 5, 6, 8, 10, 12, 16], "previou": [2, 5, 6, 8, 10, 12, 16], "previous": [5, 6, 12], "price": 6, "prima": 5, "primari": [8, 13], "primarili": 14, "prime": 12, "print": [4, 6, 10, 11, 13, 14, 15, 16], "privat": [5, 12], "probabl": [4, 12], "problem": [0, 1, 6, 8, 13, 14, 16], "procedur": 17, "process": [2, 4, 5, 6, 8, 12, 13, 14, 15, 16], "produc": [0, 2, 5, 6, 8, 10, 12, 13], "product": [2, 4, 6, 16], "product_record": 16, "profil": [0, 8, 13, 15], "program": [1, 2, 3, 6, 8, 10, 12, 16], "programmat": [6, 10], "project": [0, 2, 4, 5, 6], "project_nam": 2, "prompt": [2, 4, 6], "proper": [5, 6, 14], "properli": 4, "properti": [6, 12], "protocol": 3, "prototyp": 16, "provid": [0, 2, 3, 4, 5, 6, 8, 10, 12, 13, 14, 15, 16], "prudent": 6, "pseudo": 6, "psycopg2": 6, "public": 6, "publish": 4, "pull": [1, 6], "punycod": 12, "pure": 6, "purpos": [0, 5, 6, 10, 12, 13, 15], "put": [4, 5, 7, 12, 16], "put_writ": 7, "pwd": 6, "py": [1, 2, 4, 5, 6, 7, 10, 11, 12, 13, 14, 15, 16], "py4web": [2, 3, 4, 5, 7, 8, 10, 12, 13, 14], "py4web_filesystem": 6, "py4web_wsgi": 2, "pyc": 8, "pydal": [0, 2, 3, 5, 6, 7, 12, 13, 14, 15, 16], "pyfilesystem": 6, "pymongo": 6, "pymysql": 6, "pyodbc": 6, "pypi": 2, "pypyodbc": 6, "pysqlite2": 6, "pytd": 6, "python": [0, 2, 4, 5, 6, 8, 10, 11, 12, 13, 14, 15, 16], "python2": [2, 15], "python3": [1, 2], "pyweb": 15, "q": [2, 6, 14], "qualifi": 6, "quantiti": 6, "queri": [4, 5, 7, 10, 12, 13, 14, 15, 16], "query1": 6, "query2": 6, "queryselector": 16, "queryselectoral": 16, "querystr": 14, "question": [1, 2, 6], "quick": [1, 12], "quickli": [2, 12, 14], "quickstart": 16, "quiet": 2, "quirk": 5, "quit": [1, 2, 5, 7, 8, 12, 14], "quot": [2, 10], "quote_minim": 6, "quote_nonnumer": 6, "quotechar": 6, "r": [2, 6, 12], "race": 12, "radio": [10, 12], "radiowidget": 12, "radiu": 16, "rais": [5, 6, 12, 13, 15], "ram": [5, 6], "randint": [8, 13], "random": [6, 8, 12, 13, 16], "rang": [4, 6, 8, 13, 15], "rapid": [0, 16], "rare": 6, "rather": [6, 8, 10, 12, 16], "raw": 17, "rb": 6, "re": [0, 1, 2, 4, 5, 6, 8, 10, 12, 13, 14, 15, 16], "reach": 2, "react": 16, "reactiv": 16, "read": [1, 4, 5, 6, 7, 14, 16], "readabl": [5, 6, 7, 14, 15], "readi": [2, 6], "readm": [1, 12], "readonli": [2, 12, 16], "real": [2, 4, 7, 8, 12], "real_ident": [6, 7], "realiz": 6, "realli": [1, 4, 6], "reap": 16, "reason": [2, 5, 6, 7, 14, 15], "reassembl": 0, "rebuild": 6, "rebuilt": 6, "rec_id": 7, "recal": 8, "receiv": 6, "recent": [3, 5, 6, 12, 14], "recereiv": 16, "recip": 2, "recogn": [4, 6], "recommend": [1, 5, 6, 12, 16], "record": [7, 12, 13, 14, 15, 16], "record_id": [7, 16], "recov": [6, 12], "recreat": 6, "recurr": 6, "recurs": 8, "recycl": 6, "red": [3, 4, 6, 8, 10, 12], "redefin": 5, "redefinit": 6, "redesign": 0, "redi": 0, "redirect": [4, 5, 12, 13, 14, 16], "reduc": [0, 5, 16], "redund": 6, "ref": [10, 12, 13], "refer": [1, 5, 7, 8, 12, 16], "referenc": [6, 7, 10], "referenced_bi": 7, "reflect": [1, 6], "refresh": 14, "regex": [7, 10, 12], "regexlib": 12, "regist": [0, 5, 6, 8, 13, 15, 16], "register_plugin": 13, "register_task": 16, "register_vue_compon": 16, "registr": [4, 12], "registration_stamp": 12, "regular": [0, 2, 4, 6, 7, 8, 11, 12, 14, 15, 16], "reimplement": 16, "reinstal": 2, "reinstat": 6, "reject": 12, "rel": [4, 6, 8, 14, 15], "relat": [5, 17], "relationship": 6, "releas": [0, 2], "relev": 6, "reli": [0, 4, 6], "reliabl": 1, "reload": [2, 3, 4, 5, 12, 16], "remain": [0, 6, 12], "rememb": [3, 5, 6, 12], "remote_addr": [5, 13], "remov": [0, 2, 4, 6, 10, 12, 13], "renam": [1, 7], "render": [5, 7, 8, 10, 12, 14, 15, 16], "renoir": 8, "reopen": 5, "repackag": 0, "repeat": [6, 12], "replac": [0, 2, 6, 8, 10, 12, 14, 16], "replic": [1, 5], "report": [4, 8], "repositori": [1, 2, 3], "repr_row": 6, "repres": [0, 8, 12, 16], "represent": [10, 16], "representational_state_transf": 7, "representing_field": 12, "request": [0, 1, 2, 5, 6, 7, 12, 13, 14, 15, 16], "request_bodi": 16, "request_reset_password": 13, "requir": [0, 1, 2, 4, 5, 6, 7, 12, 13, 14, 15, 16], "requires_": 15, "requires_login": 15, "requires_membership": [5, 13], "rescu": 6, "reserv": 12, "reset": 6, "reset_password": 13, "resourc": [6, 13, 17], "respect": [6, 10, 12, 14], "respons": [4, 5, 6, 8, 14, 15, 16, 17], "rest": [7, 13], "restapi": [0, 3, 17], "restart": [2, 4, 5, 6, 14], "restor": 6, "restrict": [5, 6, 7, 12, 16], "restructuredtext": 1, "result": [1, 6, 7, 8, 12, 14, 16], "resultset": 6, "ret": 6, "retain": 6, "retri": 6, "retriev": [4, 5, 6, 15, 16], "return": [5, 6, 7, 10, 12, 13, 14, 16], "reus": 6, "revers": [5, 6], "revert": 6, "rewrit": 6, "rewritten": 6, "rfc": 12, "rid": 6, "ride": 8, "right": [1, 2, 3, 5, 6, 8], "road": 16, "robust": 16, "rocket": 15, "rocket3": [2, 15], "rocketserv": 2, "role": [2, 5, 10], "roll": [5, 6], "rollback": [4, 16], "root": [6, 8, 13, 14], "ror": 6, "roughli": 6, "rout": [0, 2, 3, 5, 14, 15, 16], "rover": 6, "row": [8, 10, 12, 14, 15, 16], "rows1": 6, "rows2": 6, "rows3": 6, "rows_list": 6, "rows_per_pag": 14, "rpc": 6, "rst": 1, "rule": [4, 5, 8, 12, 14], "run": [1, 3, 4, 5, 8, 13, 15, 16, 17], "run_in_transact": 6, "runtim": [2, 6], "s3": 6, "s_": [12, 16], "s_autocomplet": 16, "s_autocomplete_result": 16, "s_down_kei": 16, "s_search": 16, "safari": 16, "safe": [1, 5, 6, 10, 14, 15], "safer": [6, 12, 14], "safeti": [2, 16], "sai": [6, 13], "said": 7, "sake": 6, "salt": 12, "sam": 0, "same": [0, 2, 4, 5, 6, 7, 8, 10, 11, 12, 13, 14, 15, 16], "same_sit": 5, "saml": 13, "saml2": 0, "sampl": 13, "sandbox": 16, "sane": 4, "sanit": [5, 10, 12, 15], "santa": 1, "sap": 6, "sapdb": 6, "sapdbadapt": 6, "sass": 4, "sass_compil": 4, "save": [1, 2, 4, 5, 6, 11, 12], "scaffold": [2, 4, 5, 6, 8, 12, 15, 16], "scaffold_zip": 2, "scale": [5, 8], "scan": 6, "scare": 1, "schafer": 1, "schedul": 17, "scheduled_for": 16, "schema": 6, "scheme": 12, "scheuled_for": 16, "school": 13, "scope": 4, "score": 16, "score_input": 16, "scratch": 17, "script": [2, 5, 8, 12, 16], "sdk": 2, "se": [6, 14], "seamlessli": 8, "search": [0, 1, 2, 3, 6, 10, 12, 13, 17], "search_button_text": 14, "search_form": 14, "search_queri": 14, "search_text": 14, "search_valu": 16, "searchabl": 6, "sec": 16, "second": [5, 10, 12, 13, 15], "secret": [5, 13], "section": [2, 4, 6, 8, 12, 13], "secur": [0, 2, 7, 13], "see": [0, 1, 2, 3, 4, 5, 6, 8, 10, 12, 13, 14, 16], "seem": 6, "seen": [0, 5, 6, 7, 10, 12, 13, 14, 16], "segment": 4, "select": [3, 4, 5, 7, 11, 12, 13, 14, 15, 16, 17], "selected_el": 16, "selected_id": 14, "selectedindex": 16, "selector": [10, 16], "selector1": 10, "selector2": 10, "selectorn": 10, "selectwidget": 12, "self": [2, 5, 10, 12, 14, 16], "semant": [12, 13], "send": [2, 6, 12, 13, 17], "send_two_factor_email": 13, "sender": [13, 16], "sendgrid": 16, "sendgrid_api_kei": 16, "sendgridapicli": 16, "sendmail": 16, "sendmail_task": 16, "sens": [0, 6, 12, 13], "sensit": [5, 6, 12], "sent": [5, 6, 13, 16], "separ": [2, 5, 6, 8, 12, 13, 14, 16], "sequenc": [5, 6], "sequenti": 6, "seri": 1, "serial": [4, 5, 6, 8, 10, 12], "serializ": [0, 5, 6, 10], "serv": [0, 2, 4, 6, 13, 15, 16], "server": [0, 2, 3, 4, 7, 8, 13, 15, 16, 17], "server_addr": 6, "serversid": 16, "session": [0, 2, 4, 6, 10, 12, 13, 14, 15, 16, 17], "session_app1": 5, "session_secret_kei": 5, "set": [0, 1, 2, 4, 5, 7, 8, 10, 11, 13, 16], "set_attribut": 6, "set_encod": 6, "set_head": 6, "set_password": 3, "setinterv": 16, "setup": [1, 3, 4, 13, 14, 16, 17], "setvirtualfield": 6, "sever": 6, "sf": 16, "sftp": 6, "sg": 16, "sh": 16, "sha512": [8, 12], "share": [6, 15], "shell": 10, "ship": 8, "shoe": 6, "shop": 5, "short": [12, 16], "shortcut": [8, 12], "shorter": [6, 12], "shortli": 4, "should": [1, 2, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "show": [1, 2, 4, 5, 6, 8, 12, 13, 14], "show_id": 14, "showcas": 6, "shown": [2, 6, 12, 13], "shutil": 6, "side": [1, 6, 16, 17], "sidebar": 8, "sidebar_en": 8, "sidebar_menu": 10, "sidecar": 16, "sign": [2, 4, 5, 6, 8, 12, 13], "signatur": [5, 7, 10, 12, 16], "signed_url": 5, "signer": 5, "signifi": 8, "signific": 8, "signing_info": 12, "similar": [0, 4, 5, 6, 10, 12, 15], "similarli": [6, 10], "simpl": [1, 2, 4, 5, 6, 7, 8, 10, 12, 13, 14, 16, 17], "simple_queri": 16, "simpler": [6, 8, 14], "simplest": [2, 4], "simpli": [2, 4, 5, 6, 8, 11, 12, 16], "simplic": [6, 16], "simplifi": [0, 4, 6, 8], "simultan": 6, "sinc": [0, 4, 5, 6, 7, 8, 13, 14, 15], "singl": [0, 2, 5, 6, 7, 8, 10, 12, 13, 14], "singleton": [5, 15], "site": [1, 2, 4, 5, 6, 10, 14, 16], "situat": 6, "six": 6, "size": [5, 6, 8, 12], "skip": [5, 16], "slash": [1, 4, 5, 13], "slave": 6, "sleep": 16, "sleep_tim": 16, "slice": 6, "slicker": 0, "slow": [6, 16], "slug": 12, "sm": 16, "small": [5, 12], "smaller": 6, "smtplib": 16, "snippet": 6, "so": [2, 5, 6, 8, 10, 12, 13, 14, 15, 16], "soap": 10, "socket": 16, "solut": [0, 1, 2, 6, 16], "some": [0, 1, 2, 4, 5, 6, 7, 8, 10, 12, 13, 15, 16], "some_condit": 8, "some_form": 12, "some_valu": 6, "somefield": 6, "somefil": 6, "somepath": 5, "somet": 6, "someth": [5, 6, 7, 8, 10, 12, 14, 16], "sometim": [5, 6, 8, 10, 12, 14], "somevalu": 6, "somewhat": 12, "somewher": [5, 6], "soon": [8, 16], "sophist": 15, "sort": 14, "sourc": [3, 4, 6, 12, 16], "source1": 12, "south": 1, "sp": 6, "space": [6, 8, 12, 14], "span": [4, 15], "spatialit": 6, "speak": 5, "special": [0, 4, 5, 6, 8, 10, 11, 13, 15, 17], "specif": [1, 2, 5, 6, 7, 8, 10, 12, 13, 15, 16], "specifi": [2, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "speed": [6, 7, 8], "sphinx": 1, "spiderman": [7, 14], "spin": [0, 4], "spirit": 7, "split": [6, 7, 8, 12], "split_email": 12, "sql": 17, "sql_mode": 6, "sqladapt": 6, "sqlcustomtyp": 6, "sqlform": [0, 12, 15], "sqlite": [1, 5, 7, 13, 14, 16], "sqlite3": 6, "sqliteadapt": 6, "squar": [0, 8], "src": [5, 6, 8, 10, 12, 16], "ss": 12, "ssl": 2, "ssl_cert": 2, "ssl_kei": 2, "sslcert": 6, "sslkei": 6, "sslmode": 6, "sslrootcert": 6, "sso_id": [5, 13], "stabl": 2, "stai": 6, "stand": [7, 10, 12], "standard": [1, 2, 3, 6, 7, 13, 14, 15, 16, 17], "start": [0, 1, 2, 3, 4, 5, 6, 8, 10, 12, 13, 14, 15, 16], "start_imperson": 13, "startup": [6, 15, 17], "state": [5, 6, 7, 15, 16], "stateless": [5, 16], "statement": [6, 8, 12], "static": [1, 8, 10, 15, 17], "static_dev": 4, "statu": [7, 16], "status_cod": 16, "stderr": [2, 16], "stdout": [2, 16], "steil": [0, 1, 14], "step": [2, 6, 13, 15, 16], "step1": 5, "step2": 5, "step3": 5, "step_complet": 5, "still": [2, 5, 6, 10, 12, 14, 15], "stone": 14, "stop": [2, 3, 13], "stop_imperson": 13, "storag": [5, 6, 7, 14], "store": [0, 2, 5, 6, 10, 12, 13, 15, 16], "stored_item": 6, "stored_item_arch": 6, "stori": [0, 5], "str": [2, 5, 6, 10, 12, 15, 16], "stream": [4, 5, 6, 15], "strength": 7, "strict": 12, "strictli": [4, 6, 16], "string": [4, 5, 7, 8, 10, 11, 12, 14], "stringio": 6, "stringlistproperti": 6, "strip": [2, 12, 15], "strong": [0, 10, 13], "strongli": [1, 5, 12, 14], "structur": [1, 4, 5, 6, 11, 13, 14, 15, 16, 17], "stuck": 2, "student": 2, "studi": 1, "studio": 1, "stuff": [12, 14], "style": [4, 8, 12, 16, 17], "stylesheet": [8, 14], "sub": 6, "subclass": [6, 12], "subfold": [4, 5, 6], "subhead": 10, "subject": [6, 7, 13, 16], "submiss": [12, 16], "submit": [1, 5, 6, 10, 12, 13, 14, 16], "submodul": 0, "subnet": 12, "subqueri": 16, "subsect": 6, "subset": [0, 6, 12], "substitut": [6, 8], "substr": 12, "subtl": 6, "succe": 6, "succeed": 0, "success": [0, 4, 5, 6, 7, 13, 16], "successfulli": 13, "sudo": [2, 13], "suffer": [0, 13], "suffic": 6, "suffici": 6, "sugar": 5, "suggest": [1, 6, 12], "sugizo": 0, "suit": 2, "summar": 6, "superhero": [6, 7, 12, 14, 16], "superman": [6, 7, 12, 14], "superpow": [6, 7], "superseed": 6, "suppli": 10, "support": [1, 4, 5, 8, 10, 11, 12, 13, 14, 15, 16, 17], "suppos": 6, "suppress": [2, 10], "sure": [2, 3, 4, 5, 6, 11, 12, 13, 16], "surround": 12, "susan": 6, "sv": 6, "switch": [2, 5, 6], "sybas": 6, "sybaseadapt": 6, "symbol": 12, "symlink": [2, 4], "sync": [2, 6], "synopsi": 12, "syntact": [5, 12], "syntax": [0, 1, 4, 5, 6, 7, 10, 12, 13, 15, 16, 17], "system": [0, 2, 5, 6, 10, 13, 16], "sysus": 6, "t": [0, 1, 2, 3, 4, 5, 6, 8, 10, 11, 12, 13, 14, 15], "t_folder": 5, "tab": [3, 5, 12], "tabl": [5, 7, 12, 13, 14, 15, 16], "table1": 6, "table_hash": 6, "table_nam": 6, "tablenam": [6, 7, 12, 16], "tag": [0, 5, 7, 8, 15, 16, 17], "tag_input": 16, "tagged_db": 13, "tagger": 10, "tags_input": 16, "tail": 6, "tail_nam": 13, "take": [2, 3, 4, 5, 6, 8, 10, 12, 13, 14, 16], "taken": 12, "tamper": [5, 6], "tanti": 16, "tantissimi": 11, "tap": 16, "tar": 12, "target": [6, 10, 16], "task": [1, 5, 6, 13, 17], "task_run": 16, "tast": 6, "tbodi": 6, "tcp": 3, "td": 6, "teacher": 13, "technic": 16, "tell": [2, 4, 5, 6, 13, 14, 16], "temp": 6, "templat": [0, 10, 12, 13, 15, 16, 17], "temporari": 6, "temporarili": 5, "ten": 12, "tenanc": 6, "teradata": 6, "teradataadapt": 6, "teredo": 12, "term": [6, 12], "termin": [4, 8, 16], "test": [0, 2, 4, 6, 8, 10, 12, 13, 14], "text": [2, 5, 6, 8, 10, 14, 16], "textarea": 12, "textareawidget": 12, "textual": 10, "th": 6, "than": [0, 2, 4, 5, 6, 7, 8, 10, 12, 13, 14, 16], "thank": [0, 6, 10], "that_templ": 8, "thead": 6, "thei": [0, 2, 4, 5, 6, 7, 8, 12, 13, 15, 16], "them": [0, 1, 2, 4, 5, 6, 7, 8, 12, 13, 14, 15, 16], "themselv": [6, 8], "therefor": [2, 4, 5, 6, 8, 10, 12, 15], "therein": 6, "thi": [0, 2, 3, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "thing": [2, 5, 6, 12, 14, 15], "thing_id": 12, "thing_tags_default": 6, "think": [5, 6, 8, 14, 16], "third": [0, 5, 6, 12], "this_templ": 8, "thisisatest": 10, "thisisthekei": 12, "those": [0, 2, 5, 6, 8, 10, 13, 15, 16], "though": 8, "thought": [0, 6, 13], "thread": [2, 5, 6, 15, 16], "threadsafevari": 5, "three": [0, 5, 6], "through": [2, 12], "throughout": 5, "thu": [6, 8], "thumbnail": 12, "ti": 5, "ticket": [0, 3, 6], "tickets_onli": 2, "tild": 6, "tim": 6, "time": [0, 2, 4, 5, 8, 14, 15, 16], "timedelta": 12, "timeoffset": 10, "timeout": [5, 16], "timestamp": [5, 7, 16], "tip": [2, 14, 17], "titl": [3, 8, 12, 16], "tmp": [5, 6], "to_addr": 16, "todai": [0, 12, 16], "todeclar": 5, "todo": 16, "togeth": [0, 6, 8, 11, 14], "toi": 6, "token": [5, 12], "too": [2, 5, 6, 12, 16], "took": 6, "tool": [0, 6, 13, 16], "top": [8, 11, 12, 13], "topic": [14, 17], "tornado": 2, "total": [6, 7], "total_pric": 6, "touch": 8, "tr": 6, "traceback": [5, 6], "track": [1, 6, 15], "trade": 6, "tradit": [2, 6], "trail": [2, 12], "train": 1, "transact": [5, 16], "transform": [5, 6, 12, 16], "transit": 16, "translat": [1, 2, 4, 6, 8, 12, 15, 16, 17], "transpar": [6, 8, 12], "trap": 16, "treat": [6, 15], "tree": [4, 8, 12], "tri": [0, 6, 15], "trick": 2, "trickeri": 8, "trigger": [3, 5, 6, 16], "trivial": [5, 6], "true": [1, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "truncat": 6, "truth": 16, "try": [1, 2, 5, 6, 12, 13, 16], "ttl": 5, "tupl": [6, 8, 10], "turn": [0, 4, 6, 12, 13, 14, 16], "tutori": [2, 14, 16], "twice": [5, 6], "twilio": 16, "twitter": [0, 5, 13], "two": [0, 1, 2, 4, 5, 6, 8, 12, 14, 15, 16], "two_factor": 13, "two_factor_filt": 13, "txt": [0, 2, 4, 6], "type": [2, 4, 5, 7, 8, 10, 13, 14, 16], "typewrit": 10, "typic": [4, 5, 6, 8, 12], "u": [2, 6, 10, 12], "ubuntu": 13, "uc": 1, "ui": 5, "uid": 6, "ul": [8, 12, 13, 16], "un": [8, 10, 11, 16], "unari": 6, "unauthent": [5, 6, 10], "unauthor": 6, "unchang": [6, 12], "undefin": 5, "under": [2, 3, 4, 5, 6, 12], "underli": 15, "underscor": [6, 10, 12], "understand": [0, 1, 4, 6, 7, 8, 14, 17], "undocu": 16, "unfortun": [6, 14], "unicod": [6, 12], "unicodedecodeerror": 6, "uniform": 6, "union": 6, "uniqu": [6, 7, 12], "unit_pric": 6, "univers": [6, 10], "unknown": 4, "unless": [2, 3, 5, 6, 8, 12, 16], "unlik": [0, 2, 4, 6, 7, 8, 15, 16], "unnam": [6, 10], "unned": 2, "unord": 10, "unpkg": 16, "unquot": [6, 10], "unsaf": [5, 10, 12], "untest": [2, 13], "until": [0, 5, 6, 8, 12], "unus": 6, "unusu": 6, "unwant": [2, 6], "unzip": 2, "up": [1, 2, 5, 6, 8, 13, 16], "updat": [2, 5, 12, 14, 15, 16, 17], "update_form": 12, "update_languag": 11, "update_na": 6, "update_th": 12, "upgrad": [6, 17], "upload": [0, 4, 15], "upload_fold": [6, 12], "upload_help": 16, "uploadf": 6, "uploadfield": 6, "uploadfold": 6, "uploadsepar": 6, "upon": [2, 8, 13, 15], "upper": [4, 5, 12], "upper_cas": 5, "uppercas": [5, 12], "uri": 13, "url": [2, 4, 5, 7, 8, 12, 13, 14, 15, 16], "url_prefix": 2, "url_sign": 5, "url_to_post_to": 16, "urlsign": 17, "us": [0, 1, 3, 4, 7, 11, 12, 15, 17], "usabl": 14, "usag": [2, 3, 4, 5, 6, 10, 12, 13, 14], "use_schedul": 16, "useful": 12, "useless": [12, 15], "user": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 14, 15, 16], "user_email": 15, "user_id": [5, 6, 13, 15], "user_nam": 6, "user_outside_network": 13, "user_password": 6, "user_token": 6, "usernam": [5, 6, 13], "usr": 1, "usual": [1, 2, 5, 6, 7, 8, 10, 12], "utcnow": [5, 6], "utf": 6, "utf8": 6, "utf8mb4": 6, "util": [2, 4, 5, 8, 10, 12, 13, 14, 15, 17], "uuid": [5, 6], "uuid4": [5, 6], "v": [5, 10, 12, 16], "v3": 1, "val": [14, 16], "val1_row1": 6, "val1_row2": 6, "val2_row1": 6, "val2_row2": 6, "valid": [2, 4, 7, 8, 10, 14, 15, 17], "validate_j": 4, "valq7711": [0, 4], "valu": [2, 5, 7, 8, 10, 11, 12, 13, 14, 16], "valuabl": 1, "value1": 6, "value2": 6, "value_field": 12, "var": [6, 10, 12, 15, 16], "varchar": 6, "variabl": [4, 5, 6, 10, 11, 12, 14, 16], "variou": [5, 6], "ve": [1, 2, 3, 5, 8, 10, 12, 13, 14, 16], "vehicl": 5, "vendor": 16, "vendor_typ": 16, "venv": 2, "verbos": 6, "veri": [0, 4, 5, 6, 8, 10, 12, 13, 15, 16], "verif": 13, "verifi": [5, 12, 13, 16], "verify_email": 13, "versa": 5, "version": [1, 3, 5, 7, 8, 12, 16], "vertica": 6, "verticaadapt": 6, "via": [5, 6, 8, 10, 13, 16], "vice": 5, "video": [2, 16], "view": [1, 5, 6], "viewport": 8, "virtual": [1, 17], "virtualenv": [1, 2], "virtualfield": 6, "visibl": 4, "visit": [3, 5, 6, 8, 12, 13], "visit_log": 5, "visitor": [6, 10, 12], "visto": 5, "visual": 1, "vital": 13, "volt": 5, "vscode": 2, "vue": [0, 4, 16], "vulner": 8, "w": [2, 4, 5, 6], "w2p_even": 6, "w2p_odd": 6, "wa": [0, 5, 6, 12, 13, 14], "wai": [0, 2, 3, 4, 5, 6, 8, 10, 12, 13, 14, 15, 16], "wait": 6, "waitress": 2, "want": [2, 4, 5, 6, 8, 10, 12, 14, 16], "warn": [2, 5], "warp": 11, "watch": [2, 3, 17], "wayn": [7, 14], "wb": 6, "we": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "web": [0, 1, 2, 5, 6, 8, 13, 14, 15, 16, 17], "web2pi": [0, 1, 2, 3, 4, 6, 12, 13, 14, 17], "webserv": 4, "websit": [6, 16], "websocket": 16, "welcom": [2, 4, 5, 8, 15, 16], "well": [0, 5, 6, 8, 12, 13, 16], "were": [0, 4, 6], "what": [1, 4, 5, 6, 8, 12, 13, 15, 16, 17], "whatev": [10, 16], "when": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "whenev": [4, 6], "where": [1, 2, 4, 6, 7, 8, 12, 13, 15, 16], "whether": [5, 6, 8, 12, 13, 14, 15], "which": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "whichev": 16, "while": [0, 5, 6, 7, 12, 13, 14, 15], "white": [10, 16], "whitelist": 13, "who": [0, 13], "whole": [4, 12], "whose": [6, 8, 12], "why": [5, 6, 8, 15], "widget": [6, 17], "width": [8, 12], "wiki": [6, 7], "wikipedia": [6, 7], "wild": 6, "wildcard": 4, "william": 6, "window": [1, 2, 4, 5, 6, 8, 12], "wish": [1, 6, 12, 16], "wit": 2, "with_alia": 6, "within": [0, 1, 4, 5, 6, 8, 10, 12, 14, 16], "without": [1, 8, 10, 14, 16, 17], "wolf": 0, "won": 6, "wood": 6, "word": [5, 6, 11, 14], "work": [0, 2, 4, 5, 6, 8, 10, 12, 13, 14, 15, 16], "worker": [2, 5, 16], "workflow": [5, 17], "workload": 6, "workspacefold": 2, "world": [4, 5, 6, 8, 10, 12, 16], "worri": [4, 6], "worth": 8, "would": [0, 5, 6, 8, 10, 12, 14, 16], "wouldn": 6, "wrap": [5, 11, 12, 14, 16], "wrapper": [15, 16], "writabl": [5, 6, 12, 15], "write": [2, 4, 5, 6, 8, 12, 15], "written": [1, 8, 12, 14], "wrong": [0, 5, 6], "wsgi": 5, "wsgiref": 2, "wsgirefthreadingserv": 2, "wsgith": 2, "www": [2, 8, 10, 14, 16], "x": [2, 6, 8, 10, 12, 14, 16], "xml": [5, 8, 12, 15, 16], "xmlescap": 10, "xmln": 10, "xss": [6, 8, 10], "xyz": [10, 12], "y": [2, 10, 12], "yaml": 2, "yatl": [0, 4, 5, 6, 12, 14, 16, 17], "yb": 10, "ye": [2, 6, 16], "year": [12, 16], "yes_or_no": 6, "yet": [0, 2, 4, 5, 6, 8, 12, 16], "yield": 6, "yml": 2, "you": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "your": [1, 2, 3, 4, 5, 6, 8, 10, 12, 13, 14, 15, 16], "your_app": 12, "your_full_path_to_py4web": 1, "your_nam": [1, 16], "yourapp": 6, "yourappnam": 2, "youremail": 13, "yourself": [1, 2, 12, 14], "youtub": [2, 6], "yyyi": 12, "z": [10, 12], "zanferrari": 0, "zap": 13, "zap_id": 13, "zapper": 13, "zero": [6, 8, 12, 14], "zip": [0, 2, 6, 12], "zip_cod": 16, "zxjdbc": 6}, "titles": ["What is py4web?", "Help, resources and hints", "Installation and Startup", "The Dashboard", "Creating an app", "Fixtures", "The Database Abstraction Layer (DAL)", "The RestAPI", "YATL Template Language", "<no title>", "YATL helpers", "Internationalization", "Forms", "Authentication and authorization", "Grid", "From web2py to py4web", "Advanced topics and examples", "py4web: the reference Manual"], "titleterms": {"A": [1, 10, 12], "On": 4, "One": 6, "The": [1, 3, 4, 5, 6, 7, 12, 14, 16], "_lastsql": 6, "_scaffold": 4, "about": [5, 6], "abstract": 6, "access": 15, "acknowledg": 0, "action": [7, 13, 14], "ad": 6, "adapt": 6, "advanc": [6, 12, 16], "aka": 2, "alias": 6, "all": 6, "alon": 6, "an": [4, 6], "anoth": 6, "any_of": 12, "anywher": 5, "app": [2, 4, 6], "applic": 6, "arg": 15, "as_dict": 6, "as_list": 6, "asyncio": 16, "attempt": 6, "attribut": 6, "auth": [5, 13, 15], "authent": 13, "author": 13, "autocomplet": 16, "avg": 6, "background": 16, "base": 6, "basic": [8, 12, 14], "beautifi": 10, "belong": 6, "binari": 2, "block": 8, "bodi": 10, "broken": 6, "built": 10, "button": 14, "cach": [5, 6], "cacheabl": 6, "call": [2, 15], "callabl": 14, "callback": 6, "cascad": 6, "case": 6, "cat": 10, "caveat": 5, "celeri": 16, "chang": 4, "checkbox": [12, 14], "children": 10, "class": 14, "cleanup": 12, "client": 5, "coalesc": 6, "coalesce_zero": 6, "column": 14, "com": 2, "combin": 6, "command": [2, 6], "commit": 6, "common": 6, "complex": 12, "comput": 6, "condit": 5, "connect": 6, "constructor": [6, 12], "contain": 6, "content": 17, "contribut": 1, "control": 6, "conveni": 5, "convers": 15, "cooki": 5, "copi": [4, 6], "count": 6, "counter": 15, "creat": 4, "crud": 14, "crypt": 12, "csv": 6, "custom": [5, 6, 10, 12, 14], "dai": 6, "dal": [5, 6], "dashboard": [3, 6], "data": 6, "databas": [5, 6, 12], "datastor": 6, "date": 12, "db": 6, "debug": 1, "decor": 5, "def": 8, "default": [6, 8], "defin": 6, "define_t": 6, "delet": 6, "deploy": 2, "design": [2, 12], "develop": 8, "dictionari": [6, 12], "discord": [1, 13], "distinct": 6, "distribut": 6, "div": 10, "docker": 2, "dom": 10, "drop": 6, "dynam": 4, "elif": 8, "els": 8, "em": 10, "endswith": 6, "engin": 2, "environ": 2, "equal": 12, "exampl": [7, 12, 14, 15, 16], "except": 8, "exclud": 6, "executesql": 6, "experi": 6, "experiment": 6, "export": 6, "express": 6, "extend": 8, "facebook": 13, "factor": 13, "failur": 6, "fake_migr": 6, "featur": [6, 14], "fetch": 6, "field": [6, 12, 14], "file": [4, 11, 12, 15], "filter": [6, 14], "filter_in": 6, "filter_out": 6, "final": 8, "find": [6, 10], "first": [2, 6], "fix": 6, "fixtur": 5, "flash": [5, 15], "folder": 6, "form": [10, 12, 15, 16], "format": [6, 12, 16], "from": [2, 4, 6, 15], "function": [8, 12], "gae": 2, "gcloud": 2, "gener": 6, "get": 7, "github": 1, "global": 2, "googl": [1, 2, 6, 13], "gotcha": 6, "grid": [14, 15, 16], "group": [1, 6], "groupbi": 6, "h1": 10, "h2": 10, "h3": 10, "h4": 10, "h5": 10, "h6": 10, "have": 6, "head": 10, "hello": 15, "help": 1, "helper": 10, "hint": 1, "hour": 6, "how": 1, "html": [6, 10], "htmx": 16, "http": 2, "i": [0, 10], "id": 6, "ilik": 6, "img": 10, "imperson": 13, "import": 6, "includ": 8, "index": 6, "indic": 17, "inform": 8, "inherit": 6, "inject": [5, 10], "inner": 6, "input": 10, "insert": 6, "insid": 13, "instal": 2, "internation": 11, "introduct": 6, "is_alphanumer": 12, "is_dat": 12, "is_date_in_rang": 12, "is_datetim": 12, "is_datetime_in_rang": 12, "is_decimal_in_rang": 12, "is_email": 12, "is_empty_or": 12, "is_equal_to": 12, "is_expr": 12, "is_fil": 12, "is_float_in_rang": 12, "is_imag": 12, "is_in_db": 12, "is_in_set": 12, "is_int_in_rang": 12, "is_ipaddress": 12, "is_ipv4": 12, "is_ipv6": 12, "is_json": 12, "is_length": 12, "is_list_of": 12, "is_list_of_email": 12, "is_low": 12, "is_match": 12, "is_not_empti": 12, "is_not_in_db": 12, "is_null_or": 12, "is_saf": 12, "is_slug": 12, "is_strong": 12, "is_tim": 12, "is_upload_filenam": 12, "is_upp": 12, "is_url": 12, "isempti": 6, "iter": 6, "j": 16, "join": 6, "kei": [6, 14], "keyword": 6, "label": 10, "languag": 8, "last": 6, "layer": 6, "layout": 8, "lazi": 6, "ldap": 13, "left": 6, "legaci": 6, "len": 6, "less": 6, "li": 10, "like": 6, "limitbi": 6, "line": 2, "list": 6, "local": 2, "locat": 6, "logic": 6, "login": 3, "lower": 6, "main": 3, "make": 6, "mani": 6, "manipul": 12, "manual": [1, 17], "max": 6, "memcach": 5, "memoiz": 5, "memori": 6, "messag": 16, "method": [6, 15], "microsoft": 6, "migrat": 6, "min": 6, "minim": 12, "minut": 6, "mobil": 8, "model": 6, "modern": 1, "modif": 6, "month": 6, "more": 6, "mssql": 6, "multipl": [5, 13], "mysql": 6, "name": 6, "new": 6, "new_app": 2, "nosql": 6, "note": 6, "o": 15, "oauth2": 13, "object": [4, 13, 14, 16], "ol": 10, "old": 6, "on_defin": 6, "onc": 6, "one": 6, "oper": 6, "option": [2, 10, 12], "oracl": 6, "orderbi": 6, "orderby_on_limitbi": 6, "other": [6, 12], "outer": 6, "overview": 10, "p": 10, "page": [3, 4, 8], "pam": 13, "paramet": [6, 12, 14], "permiss": 13, "pip": 2, "platform": 2, "plugin": 13, "plural": [6, 11], "podman": 2, "polici": 7, "polymodel": 6, "pool": 6, "practic": 7, "pre": 10, "prerequisit": [1, 2], "primari": 6, "primarykei": 6, "procedur": 2, "py4web": [0, 1, 6, 15, 16, 17], "pycharm": 1, "python": 1, "pythonanywher": 2, "q": 16, "queri": 6, "quick": 6, "quot": 6, "rang": 12, "raw": 6, "real": 6, "record": 6, "recurs": 6, "redefin": 6, "redi": 5, "redirect": 15, "refer": [6, 14, 17], "regexp": 6, "relat": 6, "remot": 6, "render": 6, "replic": 6, "repres": 6, "represent": 6, "request": 4, "reserv": 6, "resourc": 1, "respons": 7, "restapi": 7, "return": [4, 8, 15], "rname": 6, "rollback": 6, "rout": 4, "row": 6, "run": [2, 6], "sampl": 14, "schedul": 16, "scratch": 4, "script": 10, "search": 14, "second": 6, "secur": [6, 12], "select": [6, 10], "self": 6, "send": 16, "sequence_nam": 6, "server": [1, 5, 6, 10], "session": 5, "set": [6, 12, 14, 15], "set_password": 2, "setup": 2, "share": 5, "shell": [2, 6], "shortcut": 6, "side": [5, 10], "sidecar": 12, "signatur": 6, "simpl": 15, "singular": 6, "sort": [6, 12], "sourc": [1, 2], "span": 10, "special": [2, 12], "sql": 6, "sqlite": 6, "stand": 6, "standard": [8, 12], "startswith": 6, "startup": 2, "static": 4, "string": [6, 16], "structur": [8, 12], "style": [6, 10, 14], "substr": 6, "sum": 6, "summari": 6, "super": 8, "support": [2, 6], "synchron": 6, "syntax": 8, "t": 16, "tabl": [6, 10, 17], "table_class": 6, "tag": [6, 10, 12, 13], "task": 16, "tbodi": 10, "td": 10, "templat": [4, 5, 8, 14], "text": 12, "textarea": 10, "th": 10, "thead": 10, "thi": 1, "time": [6, 12], "tip": 1, "titl": 10, "topic": 16, "tour": 6, "tr": 10, "transact": 6, "translat": [5, 11], "trigger_nam": 6, "try": 8, "tt": 10, "tupl": 12, "tutori": 1, "two": 13, "two_factor_requir": 13, "two_factor_send": 13, "two_factor_tri": 13, "type": [6, 12], "ubuntu": 2, "ui": 13, "ul": 10, "understand": 2, "up": 15, "updat": [6, 11], "update_or_insert": 6, "update_record": 6, "upgrad": 2, "upload": [6, 12], "upper": 6, "uri": 6, "url": 10, "urlsign": 5, "us": [2, 5, 6, 8, 10, 13, 14, 16], "usag": 16, "user": 13, "util": 16, "valid": [6, 12], "validate_and_insert": 6, "validate_and_upd": 6, "valu": [4, 6], "variabl": [8, 15], "version": [2, 6], "video": 1, "view": 15, "virtual": [2, 6], "vscode": 1, "watch": 4, "web": [3, 4], "web2pi": 15, "what": 0, "while": 8, "widget": [12, 16], "without": [2, 6, 12], "workflow": 8, "workplac": 1, "world": 15, "wsgi": 2, "xml": [6, 10], "yatl": [8, 10], "year": 6}}) \ No newline at end of file diff --git a/apps/_documentation/static/pt/.buildinfo b/apps/_documentation/static/pt/.buildinfo index 0ee6782e..9535efd4 100644 --- a/apps/_documentation/static/pt/.buildinfo +++ b/apps/_documentation/static/pt/.buildinfo @@ -1,4 +1,4 @@ # Sphinx build info version 1 # This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done. -config: d2bde93e954cf6ead55363cc5873de58 +config: 06da5036d60ceff9836218aa2c9dac61 tags: 645f666f9bcd5a90fca523b33c5a78b7 diff --git a/apps/_documentation/static/pt/_images/first_run.png b/apps/_documentation/static/pt/_images/first_run.png index 59320040..a670f015 100644 Binary files a/apps/_documentation/static/pt/_images/first_run.png and b/apps/_documentation/static/pt/_images/first_run.png differ diff --git a/apps/_documentation/static/pt/_static/documentation_options.js b/apps/_documentation/static/pt/_static/documentation_options.js index 2565339f..c1fa76cb 100644 --- a/apps/_documentation/static/pt/_static/documentation_options.js +++ b/apps/_documentation/static/pt/_static/documentation_options.js @@ -1,5 +1,5 @@ const DOCUMENTATION_OPTIONS = { - VERSION: '1.20240530.2', + VERSION: '20240630', LANGUAGE: 'pt', COLLAPSE_INDEX: false, BUILDER: 'html', diff --git a/apps/_documentation/static/pt/chapter-01.html b/apps/_documentation/static/pt/chapter-01.html index d31155bc..b96c151e 100644 --- a/apps/_documentation/static/pt/chapter-01.html +++ b/apps/_documentation/static/pt/chapter-01.html @@ -4,7 +4,7 @@ - O que é py4web? — Documentação py4web 1.20240530.2 + O que é py4web? — Documentação py4web 20240630 @@ -18,7 +18,7 @@ - + @@ -43,7 +43,7 @@
              - 1.20240530.2 + 20240630
              @@ -233,7 +233,7 @@

              Acknowledgments - v: 1.20240530.2 + v: 20240630
              diff --git a/apps/_documentation/static/pt/chapter-02.html b/apps/_documentation/static/pt/chapter-02.html index c047a0e0..b7fe3a24 100644 --- a/apps/_documentation/static/pt/chapter-02.html +++ b/apps/_documentation/static/pt/chapter-02.html @@ -4,7 +4,7 @@ - Ajuda, recursos e dicas — Documentação py4web 1.20240530.2 + Ajuda, recursos e dicas — Documentação py4web 20240630 @@ -18,7 +18,7 @@ - + @@ -43,7 +43,7 @@
              - 1.20240530.2 + 20240630
              @@ -267,7 +267,7 @@

              Como contribuir - v: 1.20240530.2 + v: 20240630
              diff --git a/apps/_documentation/static/pt/chapter-03.html b/apps/_documentation/static/pt/chapter-03.html index fb5ec0ab..cdb99d70 100644 --- a/apps/_documentation/static/pt/chapter-03.html +++ b/apps/_documentation/static/pt/chapter-03.html @@ -4,7 +4,7 @@ - Instalação e colocação em funcionamento — Documentação py4web 1.20240530.2 + Instalação e colocação em funcionamento — Documentação py4web 20240630 @@ -18,7 +18,7 @@ - + @@ -44,7 +44,7 @@
              - 1.20240530.2 + 20240630
              @@ -300,7 +300,7 @@

              Melhoramento

              Aviso

              Isto não irá atualizar automaticamente os aplicativos padrão, como o Dashboard ** ** e padrão ** **. Você tem que remover manualmente esses aplicativos e execute

              -
              py4web setup apps
              +
              py4web setup <path to apps_folder>
               

              a fim de re-instalá-los. Esta é uma precaução de segurança, no caso de você fez alterações para esses aplicativos.

              @@ -327,7 +327,8 @@

              Primeira corridaNota

              Alguns aplicativos - como o Dashboard ** ** e padrão ** ** - têm um papel especial na py4web e, portanto, seus começos nome real com `` _`` para evitar conflitos com aplicativos criados por você.

              -

              Uma vez py4web está sendo executado você pode acessar um aplicativo específico nas seguintes URLs:

              +

              Once py4web is running you can access a specific app at the following +urls from the local machine:

              http://localhost:8000
               http://localhost:8000/_dashboard
               http://localhost:8000/{yourappname}/index
              @@ -402,7 +403,7 @@ 

              Opções de linha de comandoapp_names option lets you filter which specific apps you want to serve (comma separated). If absent or empty all the apps in the APPS_FOLDER will be run.

              +

              By default (for security reasons) the py4web framework will listen only on 127.0.0.1, i.e. localhost. +If you need to reach it from other machines you must specify the host option, +like py4web run --host 0.0.0.0 apps.

              The url_prefix option is useful for routing at the py4web level. It allows mapping to multiple versions of py4web running on different ports as long as the url_prefix and port match the location. For example py4web run --url_prefix=/abracadabra --port 8000 apps.

              @@ -691,7 +695,7 @@

              Deployment on Ubuntu - v: 1.20240530.2 + v: 20240630
              diff --git a/apps/_documentation/static/pt/chapter-04.html b/apps/_documentation/static/pt/chapter-04.html index cd5314ab..3ecf5818 100644 --- a/apps/_documentation/static/pt/chapter-04.html +++ b/apps/_documentation/static/pt/chapter-04.html @@ -4,7 +4,7 @@ - O Dashboard — Documentação py4web 1.20240530.2 + O Dashboard — Documentação py4web 20240630 @@ -18,7 +18,7 @@ - + @@ -43,7 +43,7 @@
              - 1.20240530.2 + 20240630
              @@ -190,7 +190,7 @@

              Sessão no Dashboard - v: 1.20240530.2 + v: 20240630
              diff --git a/apps/_documentation/static/pt/chapter-05.html b/apps/_documentation/static/pt/chapter-05.html index 83ae4476..7786e106 100644 --- a/apps/_documentation/static/pt/chapter-05.html +++ b/apps/_documentation/static/pt/chapter-05.html @@ -4,7 +4,7 @@ - Creating an app — Documentação py4web 1.20240530.2 + Creating an app — Documentação py4web 20240630 @@ -18,7 +18,7 @@ - + @@ -43,7 +43,7 @@
              - 1.20240530.2 + 20240630
              @@ -447,7 +447,7 @@

              Watch for files change - v: 1.20240530.2 + v: 20240630
              diff --git a/apps/_documentation/static/pt/chapter-06.html b/apps/_documentation/static/pt/chapter-06.html index 695516ca..4c7a08c0 100644 --- a/apps/_documentation/static/pt/chapter-06.html +++ b/apps/_documentation/static/pt/chapter-06.html @@ -4,7 +4,7 @@ - Fixures — Documentação py4web 1.20240530.2 + Fixures — Documentação py4web 20240630 @@ -18,7 +18,7 @@ - + @@ -43,7 +43,7 @@
              - 1.20240530.2 + 20240630
              @@ -135,7 +135,11 @@

              Fixures to parse the session cookie from the HTTP header, pick up a connection from the database connection pool, and - after the action has been executed - save the session back in the database if data has changed.

              -

              Fixtures PY4WEB fornecem um mecanismo para especificar o que uma ação necessidades para que py4web pode realizar as tarefas necessárias (e ignorar os não necessários) da maneira mais eficiente. Fixures tornar o código eficiente e reduzir a necessidade de código clichê.

              +

              PY4WEB fixtures provide a mechanism to specify what an action needs so +that py4web can accomplish the required tasks (and skip non required +ones) in the most efficient manner. Fixtures make the code efficient and +reduce the need for boilerplate code. Think of fixtures as per action +(as opposed to per app) middleware.

              Fixtures PY4WEB são semelhantes aos middleware WSGI e BottlePy plug-in, exceto que eles se aplicam a ações individuais, não para todos eles, e pode dependem uns dos outros.

              PY4WEB comes with some pre-defined fixtures: sessions, url signing and flash messages will be fully @@ -226,7 +230,8 @@

              The Template fixtureThe Inject fixture

              The Inject fixture is used for passing variables (and even python functions) to templates. Here is a simple example:

              -
              my_var = "Example variable to be passed to a Template"
              +
              from py4web.utils.factories import Inject
              +my_var = "Example variable to be passed to a Template"
               
               ...
               
              @@ -274,6 +279,22 @@ 

              The Translator fixturereturn str(T("You have been here {n} times").format(n=counter))

              +

              If the T fixture is to be used from inside a template you may want to pass it to the template:

              +
              @action('index')
              +@action.uses("index.html", session, T)
              +def index():
              +    return dict(T=T)
              +
              +
              +

              Or perahps inject (same effect as above)

              +
              from py4web.utils.factories import Inject
              +
              +@action('index')
              +@action.uses("index.html", session, Inject(T=T)
              +def index():
              +    return dict()
              +
              +

              Agora crie o seguinte arquivo de tradução `` traduções / en.json``:

        • O fixture flash

          @@ -439,11 +477,14 @@

          The Session fixture

          By default the session object is stored inside a cookie called appname_session. It’s a JWT, hence encoded in a URL-friendly string -format and signed using the provided secret for preventing tampering. -Notice that it’s not encrypted (in fact it’s quite trivial to read its -content from http communications or from disk), so do not place any -sensitive information inside, and use a complex secret. -If the secret changes existing sessions are invalidated. +format and signed using the provided secret for preventing tampering.

          +
          +

          Aviso

          +

          Data embedded in cookies is signed, not encrypted! In fact it’s quite +trivial to read its content from http communications or from disk, so +do not place any sensitive information inside, and use a complex secret.

          +
          +

          If the secret changes existing sessions are invalidated. If the user switches from HTTP to HTTPS or vice versa, the user session is also invalidated. Session in cookies have a small size limit (4 kbytes after being serialized and encoded) so do @@ -545,7 +586,7 @@

          Sharing sessions

          The Condition fixture

          -

          Some times you want to restrict access to an action based on a +

          Sometimes you want to restrict access to an action based on a given condition. For example to enforce a workflow:

          @action("step1")
           @action.uses(session)
          @@ -583,9 +624,10 @@ 

          The Condition fixture
          Condition(cond, on_false=lambda: redirect(URL('step1')))
           

          -

          You can use condition to check permissions. For example, assuming you are using -Tags as explained in chapter 13 and you are giving group memberships to users, -then you can require that users action have specific group membership:

          +

          You can use condition to check permissions. For example, if you +are giving group memberships to users using Tags (it will be explained +later on the Authorization using Tags chapter), then you can +require that users action have specific group membership:

        +
      • Using the dashboard app with databases
      • Construtor DAL
        • Assinatura da DAL
        • Strings de conexão (o parâmetro uri)
        • @@ -264,7 +265,7 @@

          The Database Abstraction Layer (DAL)

          DAL introduction

          -

          py4web rely on a database abstraction layer (DAL), an API that maps +

          py4web rely on a database abstraction layer (DAL), an API that maps Python objects into database objects such as queries, tables, and records. The DAL dynamically generates the SQL in real time using the specified dialect for the database back end, so that you do not have to @@ -274,6 +275,14 @@

          DAL introductionpyDAL. It was conceived in the web2py project but it’s a standard python module: you can use it in any Python context.

          +
          +

          Nota

          +

          What makes pyDAL different from most of the other DALs is the syntax: it maps +records to python dictionaries, which is simpler and closer to SQL. +Other famous frameworks instead strictly rely on an Object Relational Mapping (ORM) +like the Django ORM or the SQL Alchemy ORM, that maps tables to Python classes +and rows to Objects.

          +

          A little taste of pyDAL features:

          • Transactions

          • @@ -305,7 +314,7 @@

            Supported databases

  • -
    Row

    contains field values.

    +
    Row

    contains field values:

    for row in rows:
         print(row.myfield)
     
    @@ -454,15 +463,17 @@

    Experimentar com o shell py4web>>> are also directly executable via a py4web shell.

    -

    This is a simple example, using the provided examples app:

    -
    >>> from py4web import DAL, Field
    ->>> from apps.examples import db
    +

    This is a simple example, using the provided showcase app:

    +
    >>> from apps.showcase.examples.models import db
     >>> db.tables()
    -['auth_user', 'auth_user_tag_groups', 'person', 'superhero', 'superpower', 'tag', 'product', 'thing']
    +['auth_user', 'auth_user_tag_groups', 'person', 'superhero', 'superpower', 'tag', 'thing', 'user_token', 'dummy']
     >>> rows = db(db.superhero.name != None).select()
     >>> rows.first()
     <Row {'id': 1, 'tag': <Set ("tag"."superhero" = 1)>, 'name': 'Superman', 'real_identity': 1}>
    @@ -473,6 +484,19 @@ 

    Experimentar com o shell py4web +

    Using the dashboard app with databases

    +

    Generally you can use the dashboard app for viewing and modifying the databases +of a particular app. However this is not bulletproof, so for +security reason this by default is not applied to the showcase app. +But if your installation is local (not exposed to public networks), you can enable it +by simply adding to the file``apps/showcase/__init__.py`` the line:

    +
    from .examples.models import db
    +
    +
    +

    This allow you to look graphically inside the showcase application database:

    +_images/example_db.png +

    Construtor DAL

    Uso básico:

    @@ -600,7 +624,11 @@

    Strings de conexão (o parâmetro uri)
  • in SQLite the database consists of a single file. If it does -not exist, it is created. This file is locked every time it is accessed.

  • +not exist, it is created. This file is locked every time it is accessed. +In addition to the file “storage.sqlite” that contains the data, there will +be also a sql.log file plus one additional file called longhash_tablename.table +for every table definition. The table definition files are used during migrations; +in case of problems they could be deleted (they’ll be automatically recreated).

  • in the case of MySQL, PostgreSQL, MSSQL, FireBird, Oracle, DB2, Ingres and Informix the database “test” must be created outside py4web. Once the connection is established, py4web will create, alter, and drop @@ -665,8 +693,8 @@

    Tabelas preguiçosos

    Aplicativos de modelo-less

    -

    In py4web the code defined outside of actions (where normally DAL tables -are defined) is only executed at startup.

    +

    Normally in py4web the code that define DAL tables lives in the file +models.py, hence it’s only executed at startup because it’s outside of actions.

    However, it is possible to define DAL tables on demand inside actions. This is referred to as “model-less” development by the py4web community.

    To use the “model-less” approach, you take responsibility for doing @@ -763,13 +791,20 @@

    Outros parâmetros do construtor DAL

    Local de pasta do banco de dados

    folder sets the place where migration files will be created (see -Migrations for details). -It is also used for SQLite databases. Automatically set within py4web. -Set a path when using DAL outside py4web.

    +Migrations for details). By default it’s automatically set within py4web on the same +folder of the database itself, but you have to specify it when using DAL outside py4web.

    +

    Note that for SQLite databases it’s normally necessary, +otherwise you’ll implictly choose an in memory database (where folder and +migrations don’t have any sense). So these constructors have the same meaning:

    +
    db = DAL('sqlite://storage.sqlite') # folder parameter not specified
    +db = DAL('sqlite:memory')           # in memory database
    +
    +

  • Configurações padrão de migração

    -

    As configurações de migração construtor DAL são booleans que afetam padrões e comportamento global.

    +

    The DAL constructor migration settings are booleans affecting defaults +and global behaviour (again, see Migrations for details)

    `` Migrar = True`` define o comportamento de migração padrão para todas as tabelas

    `` Fake_migrate = False`` define o comportamento fake_migrate padrão para todas as tabelas

    `` Migrate_enabled = True`` se definido como desativa falsas todas as migrações

    @@ -783,7 +818,7 @@

    `` `` commit`` e rollback``

    If you pass db in an action.uses decorator, you don’t need to call -commit in the controller, it is done for you. (Also, if you use +commit in the controller, it is automatically done for you (also, if you use authenticated or unauthenticated decorator.)

    -

    It is internally implemented as a table, which in +

    Tags are hierarchical. Then find([“color”]) would return id1 and id2 +because both records have tags with “color”.

    +

    It is internally implemented with the creation of an additional table, which in this example would be db.thing_tags_default, because no tail was -specified on the Tags(table, tail=“default”) constructor.

    -

    The find method is doing a search by startswith of the -parameter. Then find([“color”]) would return id1 and id2 -because both records have tags starting with “color”. py4web uses tags as a -flexible mechanism to manage permissions.

    +specified on the Tags(table, tail=“default”) constructor.

    +

    py4web uses Tags as a flexible mechanism to manage permissions, we’ll see +all the details later on the Authorization using Tags chapter.

    @@ -1969,7 +2004,7 @@

    juntar-se, deixou

    cache, em cache

    An example use which gives much faster selects is:

    -
    rows = db(query).select(cache=(cache.ram, 3600), cacheable=True)
    +
    rows = db(query).select(cache=(cache.get, 3600), cacheable=True)
     

    Look at Caching selects, to understand what the trade-offs are.

    @@ -2240,10 +2275,15 @@

    `` Find``, `` exclude``, `` sort``

    Selects com cache

    -

    O método de seleção também leva um argumento cache`` , cujo padrão é None. Para fins de armazenamento em cache, deve ser definido como um tuplo em que o primeiro elemento é o modelo do cache ( `` cache.ram, `` cache.disk``, etc), e o segundo elemento é o tempo de validade em segundo .

    +

    The select method also takes a cache argument, which defaults to +None. For caching purposes, it should be set to a tuple where the first +element is the cache function with signature (key, callback, expiration) +(ror example cache.get assuming cache +is an instance of the py4web cache object), and +the second element is the expiration time in seconds.

    No exemplo a seguir, você vê um controlador que armazena em cache um seleto sobre a mesa db.log previamente definido. As buscas reais dados selecionados do banco de dados back-end não mais do que uma vez a cada 60 segundos e armazena o resultado na memória. Se a próxima chamada para este controlador ocorre em menos de 60 segundos desde o último banco de dados IO, ele simplesmente vai buscar os dados anteriores da memória.

    def cache_db_select():
    -    logs = db().select(db.log.ALL, cache=(cache.ram, 60))
    +    logs = db().select(db.log.ALL, cache=(cache.get, 60))
         return dict(logs=logs)
     
    @@ -2253,7 +2293,7 @@

    Selects com cache
    rows = db(query).select(cache=(cache.ram, 3600), cacheable=True)
    +
    rows = db(query).select(cache=(cache.get, 3600), cacheable=True)
     

    @@ -2634,7 +2674,9 @@

    Many to many relationCurt

    -

    Uma alternativa mais leve para muitos-para-muitos relações é a marcação, encontram-se um exemplo disso na próxima seção. Marcação de obras, mesmo em backends de banco de dados que não suportam JOINs como o Google App Engine NoSQL.

    +

    A lighter alternative to many-to-many relations is tagging, see the +Authorization using Tags chapter. Tagging works even on database backends +that do not support JOINs like the Google App Engine NoSQL.

    A auto-referência e aliases

    @@ -3088,7 +3130,7 @@

    HTML e XML (uma tabela de cada vez)`` TAG`` helper +tags, you can easily do that using the universal TAG XML helper that we’ll see later and the Python syntax *<iterable> allowed in function calls:

    >>> rows = db(db.person).select()
    @@ -3102,6 +3144,12 @@ 

    HTML e XML (uma tabela de cada vez)</result>

    +
    +

    Aviso

    +

    Do not confuse the TAG XML helper used here (see the `` TAG`` +chapter) with the Tags method that will be extensively explained +on the Authorization using Tags chapter.

    +

    Representação de dados

    @@ -3827,7 +3875,7 @@

    Google NoSQL (Datastore) - v: 1.20240530.2 + v: 20240630
    diff --git a/apps/_documentation/static/pt/chapter-08.html b/apps/_documentation/static/pt/chapter-08.html index b64110cd..54a3633a 100644 --- a/apps/_documentation/static/pt/chapter-08.html +++ b/apps/_documentation/static/pt/chapter-08.html @@ -4,7 +4,7 @@ - The RestAPI — Documentação py4web 1.20240530.2 + The RestAPI — Documentação py4web 20240630 @@ -18,7 +18,7 @@ - + @@ -43,7 +43,7 @@
    - 1.20240530.2 + 20240630
    @@ -1169,7 +1169,7 @@

    The RestAPI response - v: 1.20240530.2 + v: 20240630
    diff --git a/apps/_documentation/static/pt/chapter-09.html b/apps/_documentation/static/pt/chapter-09.html index 7a3ebde6..312471b0 100644 --- a/apps/_documentation/static/pt/chapter-09.html +++ b/apps/_documentation/static/pt/chapter-09.html @@ -4,7 +4,7 @@ - Linguagem de template YATL — Documentação py4web 1.20240530.2 + Linguagem de template YATL — Documentação py4web 20240630 @@ -18,7 +18,7 @@ - + @@ -43,7 +43,7 @@
    - 1.20240530.2 + 20240630
    @@ -734,7 +734,7 @@

    Mobile development - v: 1.20240530.2 + v: 20240630
    diff --git a/apps/_documentation/static/pt/chapter-10.html b/apps/_documentation/static/pt/chapter-10.html index 7244af72..f154bc3a 100644 --- a/apps/_documentation/static/pt/chapter-10.html +++ b/apps/_documentation/static/pt/chapter-10.html @@ -4,7 +4,7 @@ - Helpers YATL — Documentação py4web 1.20240530.2 + Helpers YATL — Documentação py4web 20240630 @@ -18,7 +18,7 @@ - + @@ -43,7 +43,7 @@
    - 1.20240530.2 + 20240630
    @@ -843,7 +843,7 @@

    Using Inject - v: 1.20240530.2 + v: 20240630
    diff --git a/apps/_documentation/static/pt/chapter-11.html b/apps/_documentation/static/pt/chapter-11.html index 7dd6772f..16fa7b1b 100644 --- a/apps/_documentation/static/pt/chapter-11.html +++ b/apps/_documentation/static/pt/chapter-11.html @@ -4,7 +4,7 @@ - Internacionalização — Documentação py4web 1.20240530.2 + Internacionalização — Documentação py4web 20240630 @@ -18,7 +18,7 @@ - + @@ -43,7 +43,7 @@
    - 1.20240530.2 + 20240630
    @@ -212,7 +212,7 @@

    Atualizar os arquivos de tradução - v: 1.20240530.2 + v: 20240630
    diff --git a/apps/_documentation/static/pt/chapter-12.html b/apps/_documentation/static/pt/chapter-12.html index a90edd25..6bd7230f 100644 --- a/apps/_documentation/static/pt/chapter-12.html +++ b/apps/_documentation/static/pt/chapter-12.html @@ -4,7 +4,7 @@ - Forumlários — Documentação py4web 1.20240530.2 + Forumlários — Documentação py4web 20240630 @@ -18,7 +18,7 @@ - + @@ -43,7 +43,7 @@
    - 1.20240530.2 + 20240630
    @@ -189,7 +189,7 @@

    ForumláriosThe Form class provides a high-level API for quickly building CRUD (create, update and delete) forms, especially for working on an existing database table. It can generate and process a form from a list of desired fields and/or from an existing database table.

    -

    There are 3 typs of forms:

    +

    There are 3 types of forms:

    CRUD Create forms:

    @@ -1061,7 +1061,7 @@

    Sorted options

    IS_IN_SET and Tagging

    The IS_IN_SET validator has an optional attribute multiple=False. If set to True, multiple values can be stored in one -field. The field should be of type list:integer or list:string as discussed in [[Chapter 6 ../06#list-type-and-contains]]. +field. The field should be of type list:integer or list:string as discussed in `` Lista: <type> `` e `` contains``. An explicit example of tagging is discussed there. We strongly suggest using the jQuery multiselect plugin to render multiple fields.

    Note that when multiple=True, IS_IN_SET will accept zero or more values, i.e. it will accept the field when nothing has been selected. multiple can also be a tuple of the form (a, b) where a and b are the minimum and (exclusive) maximum number of items @@ -1612,7 +1612,7 @@

    Validation functions - v: 1.20240530.2 + v: 20240630
    diff --git a/apps/_documentation/static/pt/chapter-13.html b/apps/_documentation/static/pt/chapter-13.html index e9f0e75a..27876932 100644 --- a/apps/_documentation/static/pt/chapter-13.html +++ b/apps/_documentation/static/pt/chapter-13.html @@ -4,7 +4,7 @@ - Authentication and authorization — Documentação py4web 1.20240530.2 + Authentication and authorization — Documentação py4web 20240630 @@ -18,7 +18,7 @@ - + @@ -43,7 +43,7 @@
    - 1.20240530.2 + 20240630
    @@ -424,7 +424,8 @@

    OAuth2 with Discord

    As already mentioned, authorization is the process of verifying what specific applications, files, and data a user has access to. This is accomplished -in py4web using Tags.

    +in py4web using Tags, that we’ve already discovered on Marcação de registros +in the DAL chapter.

    Etiquetas e permissões

    Py4web provides a general purpose tagging @@ -443,12 +444,13 @@

    Etiquetas e permissõesTo use the tagging system you first need to import the Tags module from pydal.tools. Then create a Tags object to tag a table:

    from pydal.tools.tags import Tags
    -groups = Tags(db.auth_user)
    +groups = Tags(db.auth_user, 'groups')
     
    -

    If you look at the database level, a new table will be created with a -name equals to tagged_db + “_tag” + tagged_name, in this case -auth_user_tag_groups:

    +

    The tail_name parameter is optional and if not specified the “default” +value will be used. If you look at the database level, a new table will +be created with a name equals to tagged_db + '_tag_' + tail_name, +in this case auth_user_tag_groups:

    _images/tags_db.png

    Então você pode adicionar uma ou mais marcas de registros da tabela, bem como remover existente tags:

    +

    We’ve already seen a simple requires_membership fixture on :ref:The Condition fixture. It +enables the following syntax:

    +
    groups = Tags(db.auth_user)
    +
    +def requires_membership(group_name):
    +    return Condition(
    +       lambda: group_name in groups.get(auth.user_id),
    +       exception=HTTP(404)
    +    )
    +
    +@action('index')
    +@action.uses(requires_membership('teacher'))
    +def index():
    +    return 'hello teacher'
    +
    +

    Deixamos para você como um exercício para criar um dispositivo elétrico `` has_membership`` para permitir a seguinte sintaxe:

    +
    +

    Grids with checkboxes

    +

    While the grid, per se, does not support checkboxes, you can use custom columns to add one or more columns of checboxes. +You can also add the helpers logic (the grid uses helpers to generate HTML) to wrap it in a <form> and add one +or more submit bottons. You can then add logic to process the selected rows when the button is selected. For example:

    +
    column = Column("select", lambda row: INPUT(_type="checkbox",_name="selected_id",_value=row.id))
    +
    +@action("manage")
    +@action("manage/<path:path>")
    +@action.uses("manage.html", db)
    +def manage(path=None):
    +
    +   grid = Grid(path, db.thing, columns=[column, db.thing.name])
    +
    +   # if we are displaying a "select" grid page (not a form)
    +   if not grid.form:
    +      grid = grid.render()
    +      # if checkboxes selection was submitted
    +      if request.method == "POST":
    +         # do something with the selected ids
    +         print("you selected", request.POST.get("selected_id"))
    +      # inject a ``<form>`` and a ``submit`` button
    +      grid.children[1:] = [FORM(
    +            *grid.children[1:],
    +            DIV(INPUT(_type="submit",_value="do it!")),
    +            _method="POST",
    +            _action=request.url)]
    +   return locals()
    +
    +
    +

    Notice in the above example request.POST.get("selected_id") can be a single ID (if one selected) or a list of IDs (if more than one elsected).

    +
    @@ -627,7 +660,7 @@

    Os campos de referência - v: 1.20240530.2 + v: 20240630
    diff --git a/apps/_documentation/static/pt/chapter-15.html b/apps/_documentation/static/pt/chapter-15.html index 3b00bfe8..e8743c84 100644 --- a/apps/_documentation/static/pt/chapter-15.html +++ b/apps/_documentation/static/pt/chapter-15.html @@ -4,7 +4,7 @@ - De web2py para py4web — Documentação py4web 1.20240530.2 + De web2py para py4web — Documentação py4web 20240630 @@ -18,7 +18,7 @@ - + @@ -43,7 +43,7 @@
    - 1.20240530.2 + 20240630
    @@ -491,7 +491,7 @@

    “auth” example - v: 1.20240530.2 + v: 20240630
    diff --git a/apps/_documentation/static/pt/chapter-16.html b/apps/_documentation/static/pt/chapter-16.html index 46fde01d..0bf54faa 100644 --- a/apps/_documentation/static/pt/chapter-16.html +++ b/apps/_documentation/static/pt/chapter-16.html @@ -4,7 +4,7 @@ - Advanced topics and examples — Documentação py4web 1.20240530.2 + Advanced topics and examples — Documentação py4web 20240630 @@ -18,7 +18,7 @@ - + @@ -42,7 +42,7 @@
    - 1.20240530.2 + 20240630
    @@ -71,6 +71,7 @@
  • De web2py para py4web
  • Advanced topics and examples
    • The scheduler
    • +
    • Sending messages using a background task
    • Celery
    • py4web and asyncio
    • htmx
        @@ -121,15 +122,15 @@

        The schedulertask_run and enqueueing runs of the predefined task as table records. -Each task_run references a task and contains the input to be passed to that task. The scheduler will caputure the +Each task_run references a task and contains the input to be passed to that task. The scheduler will capture the task stdout+stderr in a db.task_run.log and the task output in db.task_run.output.

        A py4web thread loops and finds the next task that needs to be executed. For each task it creates a worker process and assigns the task to the worker process. You can specify how many worker processes should run concurrently. The worker processes are daemons and they only live for the life of one task run. Each worker process is only responsible for executing that one task in isolation. The main loop is responsible for assigning tasks and timeouts.

        The system is very robust because the only source of truth is the database and its integrity is guaranteed by -transational safety. Even if py4web is killed, running tasks continue to run unless they complete, fail, or are -explicitely killed.

        +transactional safety. Even if py4web is killed, running tasks continue to run unless they complete, fail, or are +explicitly killed.

        Aside for allowing multiple concurrent task runs in execution on one node, it is also possible to run multiple instances of the scheduler on different computing nodes, as long as they use the same client/server database for task_run and as long as @@ -160,7 +161,7 @@

        The schedulerUSE_SCHEDULER=True in settings.py.

        You can manage your task runs busing the dashboard or using a Grid(path, db.task_run).

        -

        To prevent database locks (in particular with sqlite) we recommand:

        +

        To prevent database locks (in particular with sqlite) we recommend:

        • Use a different database for the scheduler and everything else

        • Always db.commit() as soon as possible after any insert/update/delete

        • @@ -175,11 +176,71 @@

          The scheduler +

          Sending messages using a background task

          +

          As en example of application of the above, +Consider the case of wanting to send emails asynchronously from a background task. +In this example we send them using SendGrid from Twilio (https://www.twilio.com/docs/sendgrid/for-developers/sending-email/quickstart-python) +Also we assume emails are represented by the following JSON structure

          +

          That means you need a new task:

          +
          import sendgrid
          +from sendgrid.helpers.mail import Mail, Email, To, Content
          +
          +def sendmail_task(from_addr, to_addrs, subject, body):
          +    ""
          +    # build the messages using sendgrid API
          +    from_email = Email(from_addr)  # Must be your verified sender
          +    content_type = "text/plain" if body[:6] != "<html>" else "text/html"
          +    content = Content(content_type, body)
          +    mail = Mail(from_email, To(to_addrs), subject, content)
          +    # ask sendgrid to deliver it
          +    sg = sendgrid.SendGridAPIClient(api_key=settings.SENDGRID_API_KEY)
          +    response = sg.client.mail.send.post(request_body=mail.get())
          +    # check if worked
          +    assert response.status_code == "200"
          +
          +# register the above task with the scheduler
          +scheduler.register_task("sendmail", sendmail_task)
          +
          +
          +

          To schedule sending a new email do:

          +
          email = {
          +    "from_addr": "me@example.com",
          +    "to_addrs": ["me@example.com"],
          +    "subject": "Hello World",
          +    "body": "I am alive!",
          +}
          +scheduler.enqueue_run(name="sendmail", inputs=email, scheduled_for=None)
          +
          +
          +

          The key:value in the email representation must match the arguments of the task. +The scheuled_for argument is optional and allows you to specify when the email should be sent. +You can use the Dashboard to see the status of your task_run``s for the task called ``sendmail.

          +

          You can also tell auth to tap into above mechanism for sending emails:

          +
          class MySendGridSender:
          +    def __init__(self, from_addr):
          +        self.from_addr = from_adds
          +    def send(self, to_addr, subject, body):
          +        email = {
          +            "from_addr": self.from_addr,
          +            "to_addrs": [to_addr],
          +            "subject": subject,
          +            "body": body,
          +        }
          +        scheduler.enqueue_run(name="sendmail", inputs=email)
          +
          +auth.sender = MySendGridSender(from_addr="me@example.com")
          +
          +
          +

          With the above, Auth will not send emails using smtplib. Instead it will send them with SendGrid using the scheduler. +Notice the only requirement here is that auth.sender must be an object with a send method with the same signature as in the example.

          +

          Notice, it it also possible to send SMS messages instead of emails but this requires 1) store the phone number in auth_user and 2) override the Auth.send method.

          +

          Celery

          Yes. You can use Celery instead of the build-in scheduler but it adds complexity and it is less robust. -Yet the build-in schduler is designed for long running tasks and the database can become a bottle neck -if you have hundrands running concurrently. Celery may work better if you have more than 100 concurrent +Yet the build-in scheduler is designed for long running tasks and the database can become a bottleneck +if you have hundreds of tasks running concurrently. Celery may work better if you have more than 100 concurrent tasks and/or they are short running tasks.

          @@ -828,7 +889,7 @@

          The T object - v: 1.20240530.2 + v: 20240630
          diff --git a/apps/_documentation/static/pt/genindex.html b/apps/_documentation/static/pt/genindex.html index b03783f6..369a7327 100644 --- a/apps/_documentation/static/pt/genindex.html +++ b/apps/_documentation/static/pt/genindex.html @@ -3,7 +3,7 @@ - Índice — Documentação py4web 1.20240530.2 + Índice — Documentação py4web 20240630 @@ -17,7 +17,7 @@ - + @@ -41,7 +41,7 @@
          - 1.20240530.2 + 20240630
          @@ -135,7 +135,7 @@

          Índice

          - v: 1.20240530.2 + v: 20240630
          diff --git a/apps/_documentation/static/pt/index.html b/apps/_documentation/static/pt/index.html index d95e6f0c..69a17107 100644 --- a/apps/_documentation/static/pt/index.html +++ b/apps/_documentation/static/pt/index.html @@ -4,7 +4,7 @@ - py4web: o manual de referência — Documentação py4web 1.20240530.2 + py4web: o manual de referência — Documentação py4web 20240630 @@ -18,7 +18,7 @@ - + @@ -42,7 +42,7 @@
          - 1.20240530.2 + 20240630
          @@ -155,6 +155,7 @@

          py4web: o manual de referênciaThe Database Abstraction Layer (DAL)
        • De web2py para py4web
            @@ -227,6 +229,7 @@

            py4web: o manual de referênciaAdvanced topics and examples
            • The scheduler
            • +
            • Sending messages using a background task
            • Celery
            • py4web and asyncio
            • htmx
            • @@ -280,7 +283,7 @@

              Índices e tabelas - v: 1.20240530.2 + v: 20240630
              diff --git a/apps/_documentation/static/pt/objects.inv b/apps/_documentation/static/pt/objects.inv index 348ba2b7..9c64e653 100644 Binary files a/apps/_documentation/static/pt/objects.inv and b/apps/_documentation/static/pt/objects.inv differ diff --git a/apps/_documentation/static/pt/search.html b/apps/_documentation/static/pt/search.html index f735cc56..3a1267fc 100644 --- a/apps/_documentation/static/pt/search.html +++ b/apps/_documentation/static/pt/search.html @@ -3,7 +3,7 @@ - Pesquisar — Documentação py4web 1.20240530.2 + Pesquisar — Documentação py4web 20240630 @@ -18,7 +18,7 @@ - + @@ -44,7 +44,7 @@
              - 1.20240530.2 + 20240630
              @@ -142,7 +142,7 @@ - v: 1.20240530.2 + v: 20240630
              diff --git a/apps/_documentation/static/pt/searchindex.js b/apps/_documentation/static/pt/searchindex.js index 1db27cdc..5d8eb4a6 100644 --- a/apps/_documentation/static/pt/searchindex.js +++ b/apps/_documentation/static/pt/searchindex.js @@ -1 +1 @@ -Search.setIndex({"alltitles": {"A auto-refer\u00eancia e aliases": [[6, "self-reference-and-aliases"]], "A minimal form example without a database": [[12, "a-minimal-form-example-without-a-database"]], "A obten\u00e7\u00e3o de um `` row``": [[6, "fetching-a-row"]], "A p\u00e1gina Web principal": [[3, "the-main-web-page"]], "ANY_OF": [[12, "any-of"]], "Acknowledgments": [[0, "acknowledgments"]], "Adicionando atributos para campos e tabelas": [[6, "adding-attributes-to-fields-and-tables"]], "Advanced form design": [[12, "advanced-form-design"]], "Advanced topics and examples": [[16, "advanced-topics-and-examples"]], "Agrupamento e contando": [[6, "grouping-and-counting"]], "Ajuda, recursos e dicas": [[1, "help-resources-and-hints"]], "Aplicativos de modelo-less": [[6, "model-less-applications"]], "As fontes no GitHub": [[1, "the-sources-on-github"]], "Assinatura da DAL": [[6, "dal-signature"]], "Atalhos": [[6, "shortcuts"]], "Atualizar os arquivos de tradu\u00e7\u00e3o": [[11, "update-the-translation-files"]], "Authentication and authorization": [[13, "authentication-and-authorization"]], "Authentication using Auth": [[13, "authentication-using-auth"]], "Authorization using Tags": [[13, "authorization-using-tags"]], "Autocomplete Widget using htmx": [[16, "autocomplete-widget-using-htmx"]], "A\u00e7\u00e3o personalizada Bot\u00f5es": [[14, "custom-action-buttons"]], "Bancos de dados legados e tabelas com chave": [[6, "legacy-databases-and-keyed-tables"]], "Bancos de dados replicados": [[6, "replicated-databases"]], "Basic form example": [[12, "basic-form-example"]], "Basic grid example": [[14, "basic-grid-example"]], "Bot\u00e3o Classe A\u00e7\u00e3o Amostra": [[14, "sample-action-button-class"]], "Built-in helpers": [[10, "built-in-helpers"]], "CLEANUP": [[12, "cleanup"]], "CRUD settings": [[14, "crud-settings"]], "CRYPT": [[12, "crypt"]], "CSV (todas as tabelas ao mesmo tempo)": [[6, "csv-all-tables-at-once"]], "CSV (uma tabela de cada vez)": [[6, "csv-one-table-at-a-time"]], "CSV e sincroniza\u00e7\u00e3o de banco de dados remoto": [[6, "csv-and-remote-database-synchronization"]], "Caching e Memoize": [[5, "caching-and-memoize"]], "Campos computados": [[6, "computed-fields"]], "Campos virtuais": [[6, "virtual-fields"]], "Campos virtuais novo estilo (experimental)": [[6, "new-style-virtual-fields-experimental"]], "Campos virtuais velho antigo": [[6, "old-style-virtual-fields"]], "Caracter\u00edsticas avan\u00e7adas": [[6, "advanced-features"]], "Cascades no banco de dados": [[6, "database-cascades"]], "Caveats about fixtures": [[5, "caveats-about-fixtures"]], "Celery": [[16, "celery"]], "Checkbox validation": [[12, "checkbox-validation"]], "Client-side session in cookies": [[5, "client-side-session-in-cookies"]], "Combinando Rows": [[6, "combining-rows"]], "Como contribuir": [[1, "how-to-contribute"]], "Complexity and security validators": [[12, "complexity-and-security-validators"]], "Computed and Virtual fields": [[6, "computed-and-virtual-fields"]], "Configura\u00e7\u00f5es de quoting e case e do banco de dados": [[6, "database-quoting-and-case-settings"]], "Configura\u00e7\u00f5es padr\u00e3o de migra\u00e7\u00e3o": [[6, "default-migration-settings"]], "Construtor DAL": [[6, "dal-constructor"]], "Construtor Field": [[6, "field-constructor"]], "Construtor Table": [[6, "table-constructor"]], "Conte\u00fado:": [[17, null]], "Copiar dados de um para outro db": [[6, "copy-data-from-one-db-into-another"]], "Copying the _scaffold app": [[4, "copying-the-scaffold-app"]], "Creating an app": [[4, "creating-an-app"]], "Custom columns": [[14, "custom-columns"]], "Custom forms": [[12, "custom-forms"]], "Custom widgets": [[12, "custom-widgets"]], "Customizing style": [[14, "customizing-style"]], "DAL introduction": [[6, "dal-introduction"]], "Database validators": [[12, "database-validators"]], "Date and time validators": [[12, "date-and-time-validators"]], "De web2py para py4web": [[15, "from-web2py-to-py4web"]], "Decoradores de conveni\u00eancia": [[5, "convenience-decorators"]], "Default page layout": [[8, "default-page-layout"]], "Deployment on Docker/Podman": [[2, "deployment-on-docker-podman"]], "Deployment on GCloud (aka GAE - Google App Engine)": [[2, "deployment-on-gcloud-aka-gae-google-app-engine"]], "Deployment on Ubuntu": [[2, "deployment-on-ubuntu"]], "Depura\u00e7\u00e3o py4web com PyCharm": [[1, "debugging-py4web-with-pycharm"]], "Depura\u00e7\u00e3o py4web com VScode": [[1, "debugging-py4web-with-vscode"]], "Dicas e sugest\u00f5es": [[1, "hints-and-tips"]], "Dictionaries and tuples with IS_IN_SET": [[12, "dictionaries-and-tuples-with-is-in-set"]], "Do princ\u00edpio": [[4, "from-scratch"]], "Em valores de retorno": [[4, "on-return-values"]], "Este manual": [[1, "this-manual"]], "Etiquetas e permiss\u00f5es": [[13, "tags-and-permissions"]], "Experimentar com o shell py4web": [[6, "experiment-with-the-py4web-shell"]], "Exportar e importar dados": [[6, "exporting-and-importing-data"]], "Express\u00f5es": [[6, "expressions"]], "Extending using variables": [[8, "extending-using-variables"]], "Falhas de conex\u00e3o (par\u00e2metro tentativas)": [[6, "connection-failures-attempts-parameter"]], "Fazendo uma conex\u00e3o segura": [[6, "making-a-secure-connection"]], "Field types and validators": [[6, "field-types-and-validators"]], "File upload field": [[12, "file-upload-field"]], "Fixa\u00e7\u00e3o migra\u00e7\u00f5es quebrados": [[6, "fixing-broken-migrations"]], "Fixtures personalizados": [[5, "custom-fixtures"]], "Fixures": [[5, "fixtures"]], "Form structure manipulation": [[12, "form-structure-manipulation"]], "Foruml\u00e1rios": [[12, "forms"]], "Generating raw SQL": [[6, "generating-raw-sql"]], "Google NoSQL (Datastore)": [[6, "google-nosql-datastore"]], "Google SQL": [[6, "google-sql"]], "HTML e XML (uma tabela de cada vez)": [[6, "html-and-xml-one-table-at-a-time"]], "HTTPS": [[2, "https"]], "Helpers YATL": [[10, "yatl-helpers"]], "Helpers overview": [[10, "helpers-overview"]], "Helpers personalizados": [[10, "custom-helpers"]], "Heran\u00e7a de tabela": [[6, "table-inheritance"]], "IS_ALPHANUMERIC": [[12, "is-alphanumeric"]], "IS_DATE": [[12, "is-date"]], "IS_DATETIME": [[12, "is-datetime"]], "IS_DATETIME_IN_RANGE": [[12, "is-datetime-in-range"]], "IS_DATE_IN_RANGE": [[12, "is-date-in-range"]], "IS_DECIMAL_IN_RANGE": [[12, "is-decimal-in-range"]], "IS_EMAIL": [[12, "is-email"]], "IS_EMPTY_OR": [[12, "is-empty-or"]], "IS_EQUAL_TO": [[12, "is-equal-to"]], "IS_EXPR": [[12, "is-expr"]], "IS_FILE": [[12, "is-file"]], "IS_FLOAT_IN_RANGE": [[12, "is-float-in-range"]], "IS_IMAGE": [[12, "is-image"]], "IS_INT_IN_RANGE": [[12, "is-int-in-range"]], "IS_IN_DB": [[12, "is-in-db"]], "IS_IN_DB and Tagging": [[12, "is-in-db-and-tagging"]], "IS_IN_SET": [[12, "is-in-set"]], "IS_IN_SET and Tagging": [[12, "is-in-set-and-tagging"]], "IS_IPADDRESS": [[12, "is-ipaddress"]], "IS_IPV4": [[12, "is-ipv4"]], "IS_IPV6": [[12, "is-ipv6"]], "IS_JSON": [[12, "is-json"]], "IS_LENGTH": [[12, "is-length"]], "IS_LIST_OF": [[12, "is-list-of"]], "IS_LIST_OF_EMAILS": [[12, "is-list-of-emails"]], "IS_LOWER": [[12, "is-lower"]], "IS_MATCH": [[12, "is-match"]], "IS_NOT_EMPTY": [[12, "is-not-empty"]], "IS_NOT_IN_DB": [[12, "is-not-in-db"]], "IS_NULL_OR": [[12, "is-null-or"]], "IS_SAFE": [[12, "is-safe"]], "IS_SLUG": [[12, "is-slug"]], "IS_STRONG": [[12, "is-strong"]], "IS_TIME": [[12, "is-time"]], "IS_UPLOAD_FILENAME": [[12, "is-upload-filename"]], "IS_UPPER": [[12, "is-upper"]], "IS_URL": [[12, "is-url"]], "Implanta\u00e7\u00e3o em PythonAnywhere.com": [[2, "deployment-on-pythonanywhere-com"]], "Information workflow": [[8, "information-workflow"]], "Inner join": [[6, "inner-join"]], "Inserir e atualizar a partir de um dicion\u00e1rio": [[6, "inserting-and-updating-from-a-dictionary"]], "Instalando a partir de bin\u00e1rios": [[2, "installing-from-binaries"]], "Instalando a partir de fonte (localmente)": [[2, "installing-from-source-locally"]], "Instala\u00e7\u00e3o de fonte (globalmente)": [[2, "installing-from-source-globally"]], "Instala\u00e7\u00e3o e coloca\u00e7\u00e3o em funcionamento": [[2, "installation-and-startup"]], "Installing from pip, using a virtual environment": [[2, "installing-from-pip-using-a-virtual-environment"]], "Installing from pip, without virtual environment": [[2, "installing-from-pip-without-virtual-environment"]], "Interface de autentica\u00e7\u00e3o": [[13, "auth-ui"]], "Internacionaliza\u00e7\u00e3o": [[11, "internationalization"]], "Joins and Relations": [[6, "joins-and-relations"]], "Key features": [[14, "key-features"]], "LDAP": [[13, "ldap"]], "Left outer join": [[6, "left-outer-join"]], "Linguagem de template YATL": [[8, "yatl-template-language"]], "Local de pasta do banco de dados": [[6, "database-folder-location"]], "MSSQL (Microsoft SQL Server)": [[6, "mssql-microsoft-sql-server"]], "Mais sobre envios": [[6, "more-on-uploads"]], "Many to many relation": [[6, "many-to-many-relation"]], "Marca\u00e7\u00e3o de registros": [[6, "tagging-records"]], "Melhoramento": [[2, "upgrading"]], "Migra\u00e7\u00e3o resumo controle": [[6, "migration-control-summary"]], "Migra\u00e7\u00f5es": [[6, "migrations"]], "Mobile development": [[8, "mobile-development"]], "Modelos": [[4, "templates"]], "Multiple Tags objects": [[13, "multiple-tags-objects"]], "Multiple fixtures": [[5, "multiple-fixtures"]], "MySQL": [[6, "mysql"]], "Nota sobre novo DAL e adaptadores": [[6, "note-on-new-dal-and-adapters"]], "O Dashboard": [[3, "the-dashboard"]], "O fixture DAL": [[5, "the-dal-fixture"]], "O fixture flash": [[5, "the-flash-fixture"]], "O grupo Google": [[1, "the-google-group"]], "O objeto `` request``": [[4, "the-request-object"]], "O pool de conex\u00f5es": [[6, "connection-pooling"]], "O que \u00e9 py4web?": [[0, "what-is-py4web"]], "OAuth2 with Discord": [[13, "oauth2-with-discord"]], "OAuth2 with Facebook": [[13, "oauth2-with-facebook"]], "OAuth2 with Google": [[13, "oauth2-with-google"]], "Operadores l\u00f3gicos": [[6, "logical-operators"]], "Op\u00e7\u00e3o `` comando call``": [[2, "call-command-option"]], "Op\u00e7\u00e3o `` comando new_app``": [[2, "new-app-command-option"]], "Op\u00e7\u00e3o `` comando run``": [[2, "run-command-option"]], "Op\u00e7\u00e3o `` comando set_password``": [[2, "set-password-command-option"]], "Op\u00e7\u00e3o `` comando setup``": [[2, "setup-command-option"]], "Op\u00e7\u00e3o `` comando shell``": [[2, "shell-command-option"]], "Op\u00e7\u00e3o `` comando version``": [[2, "version-command-option"]], "Op\u00e7\u00f5es de linha de comando": [[2, "command-line-options"]], "Or\u00e1culo": [[6, "oracle"]], "Os campos de refer\u00eancia": [[14, "reference-fields"]], "Os valores por defeito com `` `` coalesce`` e coalesce_zero``": [[6, "default-values-with-coalesce-and-coalesce-zero"]], "Other validators": [[12, "other-validators"]], "Outros operadores": [[6, "other-operators"]], "Outros par\u00e2metros do construtor DAL": [[6, "other-dal-constructor-parameters"]], "PAM": [[13, "pam"]], "Page layout standard structure": [[8, "page-layout-standard-structure"]], "Palavras-chave reservadas": [[6, "reserved-keywords"]], "Pegadinhas": [[6, "gotchas"]], "Personalizados `` tipos Field``": [[6, "custom-field-types"]], "Plataformas e pr\u00e9-requisitos suportados": [[2, "supported-platforms-and-prerequisites"]], "Plugins de Autentica\u00e7\u00e3o": [[13, "auth-plugins"]], "Pluralizar": [[11, "pluralize"]], "Primeira corrida": [[2, "first-run"]], "Procedimentos de configura\u00e7\u00e3o": [[2, "setup-procedures"]], "Pr\u00e9-requisitos": [[1, "prerequisites"]], "P\u00e1ginas est\u00e1ticas": [[4, "static-web-pages"]], "P\u00e1ginas web din\u00e2micas": [[4, "dynamic-web-pages"]], "Range, set and equality validators": [[12, "range-set-and-equality-validators"]], "Raw SQL": [[6, "raw-sql"]], "Recursivas `` s SELECT``": [[6, "recursive-selects"]], "Recursos": [[1, "resources"]], "Rede": [[14, "grid"]], "Renderizando Rows com represent": [[6, "rendering-rows-using-represent"]], "Representa\u00e7\u00e3o de dados": [[6, "data-representation"]], "RestAPI GET": [[7, "restapi-get"]], "RestAPI policies and actions": [[7, "restapi-policies-and-actions"]], "RestAPI practical examples": [[7, "restapi-practical-examples"]], "Rotas": [[4, "routes"]], "SQLite": [[6, "sqlite"]], "Searching and filtering": [[14, "searching-and-filtering"]], "Selects com cache": [[6, "caching-selects"]], "Server-side DOM": [[10, "server-side-dom"]], "Server-side session anywhere": [[5, "server-side-session-anywhere"]], "Server-side session in Redis": [[5, "server-side-session-in-redis"]], "Server-side session in database": [[5, "server-side-session-in-database"]], "Server-side session in memcache": [[5, "server-side-session-in-memcache"]], "Sess\u00e3o no Dashboard": [[3, "login-into-the-dashboard"]], "Sharing sessions": [[5, "sharing-sessions"]], "Simple conversion examples": [[15, "simple-conversion-examples"]], "Sintaxe b\u00e1sica": [[8, "basic-syntax"]], "Sorted options": [[12, "sorted-options"]], "Special installations": [[2, "special-installations"]], "Special type validators": [[12, "special-type-validators"]], "Standard widgets": [[12, "standard-widgets"]], "Strings de conex\u00e3o (o par\u00e2metro uri)": [[6, "connection-strings-the-uri-parameter"]], "Substrings": [[6, "substrings"]], "Supported databases": [[6, "supported-databases"]], "Tabelas pregui\u00e7osos": [[6, "lazy-tables"]], "Table methods": [[6, "table-methods"]], "Template Functions": [[8, "template-functions"]], "Temporiza\u00e7\u00e3o de consultas": [[6, "timing-queries"]], "Text format validators": [[12, "text-format-validators"]], "The Auth fixture": [[5, "the-auth-fixture"]], "The Condition fixture": [[5, "the-condition-fixture"]], "The DAL: a quick tour": [[6, "the-dal-a-quick-tour"]], "The Database Abstraction Layer (DAL)": [[6, "the-database-abstraction-layer-dal"]], "The Discord server": [[1, "the-discord-server"]], "The Form constructor": [[12, "the-form-constructor"]], "The Grid object": [[14, "the-grid-object"]], "The Inject fixture": [[5, "the-inject-fixture"]], "The Q object": [[16, "the-q-object"]], "The RestAPI": [[7, "the-restapi"]], "The RestAPI response": [[7, "the-restapi-response"]], "The Session fixture": [[5, "the-session-fixture"]], "The T object": [[16, "the-t-object"]], "The Template fixture": [[5, "the-template-fixture"]], "The Translator fixture": [[5, "the-translator-fixture"]], "The URLsigner fixture": [[5, "the-urlsigner-fixture"]], "The _scaffold app": [[4, "the-scaffold-app"]], "The scheduler": [[16, "the-scheduler"]], "The sidecar parameter": [[12, "the-sidecar-parameter"]], "Transa\u00e7\u00e3o distribu\u00edda": [[6, "distributed-transaction"]], "Tutoriais e v\u00eddeo": [[1, "tutorials-and-video"]], "Two Factor Authentication": [[13, "two-factor-authentication"]], "Um local de trabalho python moderna": [[1, "a-modern-python-workplace"]], "Um para muitos rela\u00e7\u00e3o": [[6, "one-to-many-relation"]], "Understanding the design": [[2, "understanding-the-design"]], "Usando DAL sem definir tabelas": [[6, "using-dal-without-define-tables"]], "Usando o DAL \u201cstand-alone\u201d": [[6, "using-the-dal-stand-alone"]], "Usando templates": [[14, "using-templates"]], "Usando um seleto para uso de mem\u00f3ria inferior \u00e0 base de iterador": [[6, "using-an-iterator-based-select-for-lower-memory-use"]], "User Impersonation": [[13, "user-impersonation"]], "Using Auth inside actions": [[13, "using-auth-inside-actions"]], "Using Fixtures": [[5, "using-fixtures"]], "Using Inject": [[10, "using-inject"]], "Using callable parameters": [[14, "using-callable-parameters"]], "Validation functions": [[12, "validation-functions"]], "Valida\u00e7\u00e3o de formul\u00e1rio": [[12, "form-validation"]], "WSGI": [[2, "wsgi"]], "Watch for files change": [[4, "watch-for-files-change"]], "Widgets": [[12, "widgets"]], "`` A``": [[10, "a"]], "`` BEAUTIFY``": [[10, "beautify"]], "`` BODY``": [[10, "body"]], "`` Belongs``": [[6, "belongs"]], "`` CAT``": [[10, "cat"]], "`` Comando SELECT``": [[6, "select-command"]], "`` Count``, `` isempty``, `` DELETE``, `` update``": [[6, "count-isempty-delete-update"]], "`` Def \u2026 return``": [[8, "def-return"]], "`` Div``": [[10, "div"]], "`` Drop``": [[6, "drop"]], "`` EM``": [[10, "em"]], "`` Find``, `` exclude``, `` sort``": [[6, "find-exclude-sort"]], "`` Form``": [[10, "form"]], "`` Format``: representa\u00e7\u00e3o da ficha": [[6, "format-record-representation"]], "`` H1``, `` h2``, `` H3``, `` H4``, `` H5``, `` H6``": [[10, "h1-h2-h3-h4-h5-h6"]], "`` HEAD``": [[10, "head"]], "`` HTML``": [[10, "html"]], "`` IMG``": [[10, "img"]], "`` INPUT``": [[10, "input"]], "`` I``": [[10, "i"]], "`` Id``: Notas sobre a chave prim\u00e1ria": [[6, "id-notes-about-the-primary-key"]], "`` If \u2026 elif \u2026 else``": [[8, "if-elif-else"]], "`` Insert``": [[6, "insert"]], "`` LI``": [[10, "li"]], "`` Label``": [[10, "label"]], "`` Like``, `` ilike``, `` regexp``, `` startswith``, `` endswith``, `` contains``, `` upper``, `` lower``": [[6, "like-ilike-regexp-startswith-endswith-contains-upper-lower"]], "`` Lista: `` e `` contains``": [[6, "list-type-and-contains"]], "`` Migrate``, `` fake_migrate``": [[6, "migrate-fake-migrate"]], "`` OL``": [[10, "ol"]], "`` OPTION``": [[10, "option"]], "`` On_define``": [[6, "on-define"]], "`` Orderby``, `` groupby``, `` limitby``, `` distinct``, `` having``, `` orderby_on_limitby``, `` join``, `` left``, `` cache``": [[6, "orderby-groupby-limitby-distinct-having-orderby-on-limitby-join-left-cache"]], "`` PRE``": [[10, "pre"]], "`` P``": [[10, "p"]], "`` Para \u2026 in``": [[8, "for-in"]], "`` Primarykey``: Suporte para tabelas legadas": [[6, "primarykey-support-for-legacy-tables"]], "`` Query``, `` Set``, `` Rows``": [[6, "query-set-rows"]], "`` Redefine``": [[6, "redefine"]], "`` Rname``: nome real": [[6, "rname-real-name"]], "`` SCRIPT``": [[10, "script"]], "`` SELECT``": [[10, "select"]], "`` SPAN``": [[10, "span"]], "`` STYLE``": [[10, "style"]], "`` Sequence_name``": [[6, "sequence-name"]], "`` Sum``, `` avg``, `` min``, `` `` max`` e len``": [[6, "sum-avg-min-max-and-len"]], "`` TABLE``, `` TR``, `` TD``": [[10, "table-tr-td"]], "`` TAG``": [[10, "tag"]], "`` TBODY``": [[10, "tbody"]], "`` TEXTAREA``": [[10, "textarea"]], "`` THEAD``": [[10, "thead"]], "`` TH``": [[10, "th"]], "`` TITLE``": [[10, "title"]], "`` TT``": [[10, "tt"]], "`` Table_class``": [[6, "table-class"]], "`` Tentar \u2026 exceto \u2026 else \u2026 finally``": [[8, "try-except-else-finally"]], "`` Trigger_name``": [[6, "trigger-name"]], "`` UL``": [[10, "ul"]], "`` URL``": [[10, "url"]], "`` Update_or_insert``": [[6, "update-or-insert"]], "`` Update_record``": [[6, "update-record"]], "`` Validate_and_insert``, `` validate_and_update``": [[6, "validate-and-insert-validate-and-update"]], "`` While``": [[8, "while"]], "`` XML``": [[10, "xml"]], "`` Year``, `` month``, `` day``, `` hour``, `` minutes``, `` seconds``": [[6, "year-month-day-hour-minutes-seconds"]], "`` _Lastsql``": [[6, "lastsql"]], "`` `` As_dict`` e as_list``": [[6, "as-dict-and-as-list"]], "`` `` Filter_in`` e filter_out``": [[6, "filter-in-and-filter-out"]], "`` `` First`` e last``": [[6, "first-and-last"]], "`` `` Plural`` e singular``": [[6, "plural-and-singular"]], "`` `` commit`` e rollback``": [[6, "commit-and-rollback"]], "`` case``": [[6, "case"]], "`` executesql``": [[6, "executesql"]], "`` polymodel``": [[6, "polymodel"]], "assinatura define_table": [[6, "define-table-signature"]], "block and super": [[8, "block-and-super"]], "cache, em cache": [[6, "cache-cacheable"]], "children": [[10, "children"]], "distinto": [[6, "distinct"]], "extend and include": [[8, "extend-and-include"]], "filtros comuns": [[6, "common-filters"]], "find": [[10, "find"]], "groupby, tendo": [[6, "groupby-having"]], "htmx": [[16, "htmx"]], "htmx usage in Form": [[16, "htmx-usage-in-form"]], "htmx usage in Grid": [[16, "htmx-usage-in-grid"]], "juntar-se, deixou": [[6, "join-left"]], "limitby": [[6, "limitby"]], "modifica\u00e7\u00e3o da tabela e campo em tempo de execu\u00e7\u00e3o": [[6, "run-time-field-and-table-modification"]], "ordenar por": [[6, "orderby"]], "orderby_on_limitby": [[6, "orderby-on-limitby"]], "py4web and asyncio": [[16, "py4web-and-asyncio"]], "py4web model": [[6, "py4web-model"]], "py4web: o manual de refer\u00eancia": [[17, "py4web-the-reference-manual"]], "retornos de chamada no registro de inser\u00e7\u00e3o, exclus\u00e3o e atualiza\u00e7\u00e3o": [[6, "callbacks-on-record-insert-delete-and-update"]], "string.format": [[16, "string-format"]], "two_factor_required": [[13, "two-factor-required"]], "two_factor_send": [[13, "two-factor-send"]], "two_factor_tries": [[13, "two-factor-tries"]], "utils.js": [[16, "utils-js"]], "versionamento recorde": [[6, "record-versioning"]], "\u00cdndices": [[6, "indexes"]], "\u00cdndices e tabelas": [[17, "indices-and-tables"]], "\u201cAccessing OS files\u201d example": [[15, "accessing-os-files-example"]], "\u201cForm and flash\u201d example": [[15, "form-and-flash-example"]], "\u201cHello world\u201d example": [[15, "hello-world-example"]], "\u201cRedirect with variables\u201d example": [[15, "redirect-with-variables-example"]], "\u201cReturn calling methods\u201d example": [[15, "return-calling-methods-example"]], "\u201cReturning args\u201d example": [[15, "returning-args-example"]], "\u201cReturning variables\u201d example": [[15, "returning-variables-example"]], "\u201cSetting up a counter\u201d example": [[15, "setting-up-a-counter-example"]], "\u201cView\u201d example": [[15, "view-example"]], "\u201cauth\u201d example": [[15, "auth-example"]], "\u201cgrid\u201d example": [[15, "grid-example"]]}, "docnames": ["chapter-01", "chapter-02", "chapter-03", "chapter-04", "chapter-05", "chapter-06", "chapter-07", "chapter-08", "chapter-09", "chapter-1", "chapter-10", "chapter-11", "chapter-12", "chapter-13", "chapter-14", "chapter-15", "chapter-16", "index"], "envversion": {"sphinx": 61, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2}, "filenames": ["chapter-01.rst", "chapter-02.rst", "chapter-03.rst", "chapter-04.rst", "chapter-05.rst", "chapter-06.rst", "chapter-07.rst", "chapter-08.rst", "chapter-09.rst", "chapter-1.rst", "chapter-10.rst", "chapter-11.rst", "chapter-12.rst", "chapter-13.rst", "chapter-14.rst", "chapter-15.rst", "chapter-16.rst", "index.rst"], "indexentries": {}, "objects": {}, "objnames": {}, "objtypes": {}, "terms": {"0": [2, 3, 5, 6, 7, 8, 10, 11, 12, 13, 14, 15, 16], "00": 7, "01": 7, "02": [6, 12], "03": [2, 6, 7], "04": 2, "04t07": 7, "05": 7, "06": 12, "08": 12, "0x4e86": 12, "0x7fa533ff7640": 10, "1": [2, 3, 5, 6, 7, 8, 10, 11, 12, 14, 15, 16], "10": [2, 6, 7, 8, 10, 11, 12, 13, 16], "100": [2, 6, 7, 8, 12, 16], "1000": [5, 6, 12, 16], "1000ms": 16, "100px": 16, "1024": 12, "1048576": 12, "10px": 14, "11": [6, 12], "111111": 16, "11211": 5, "12": 12, "120": 6, "123": [10, 12], "123218": 7, "123456": 12, "125": 6, "127": [2, 3, 5, 12, 14], "13": [5, 6, 12], "132635": 7, "14": [8, 12, 14], "15": [6, 12, 13, 14], "16": 12, "168": 12, "169": 12, "16px": 8, "172": [6, 12], "174": 6, "178974": 7, "19": [6, 7, 12], "192": [6, 12], "1963": 12, "198": 6, "199": 12, "19t05": 7, "1e100": 6, "1kb": 12, "1l": 6, "1mb": 12, "1pkogiy59xj8co8": 8, "2": [5, 6, 7, 8, 10, 11, 12, 13, 15, 16], "20": [2, 7, 11, 12], "200": [7, 12, 15, 16], "2001": 12, "2002": 12, "2005": 6, "2007": 0, "2008": 12, "2009": 12, "200ms": 16, "200x200": 12, "2010": 6, "2012": 6, "2013": 6, "2015": 0, "2018": 6, "2019": 7, "201988": 7, "2020": 1, "20201112": 3, "2021": 7, "2022": 5, "207": 6, "217": 6, "22": 13, "227": 6, "239": 6, "2396": 12, "24": 12, "254": 12, "255": 12, "256": 6, "2616": 12, "28": 12, "2em": 16, "2px": 16, "3": [0, 2, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "30": [2, 6, 8, 12], "301": 15, "309903": 7, "31": [6, 7, 12], "32": [6, 12], "322494": 7, "33": [6, 12], "34": 7, "3490": 12, "3492": 12, "35": 6, "355181": 7, "3600": [5, 6], "366288": 7, "38": 7, "3em": 16, "4": [2, 5, 6, 7, 8, 12, 14], "40": [2, 10, 16], "400": [5, 15], "404": [5, 13], "405515": 7, "43": 6, "45": [8, 12], "451907": 7, "453020": 7, "456": 12, "466030": 7, "4e": 12, "5": [5, 6, 7, 8, 11, 12, 13, 14, 16], "50": [2, 7], "500": 16, "500ms": 16, "512": 6, "53": 12, "54": 8, "559918": 7, "58": 8, "59": 12, "6": [5, 6, 7, 12, 13, 15], "60": [5, 6], "63": [6, 12], "6379": 5, "64": [6, 8, 16], "65": 6, "6to4": 12, "7": [2, 7, 8, 12, 15], "70": 7, "74": 6, "75": 7, "768": 6, "8": [2, 6, 7, 12], "80": [7, 12], "8000": [2, 3, 4, 12, 14], "86": 12, "8601": 7, "8em": [8, 16], "9": [6, 7, 12, 14, 15], "90": [6, 7], "91": 6, "95": 6, "97": 6, "974953": 7, "99": 6, "A": [1, 2, 4, 5, 7, 8, 11, 13, 14, 15, 16, 17], "AS": 6, "Ao": [4, 6, 8, 14], "As": [3, 4, 5, 6, 7, 8, 10, 11, 12, 13, 14, 16], "COMO": 6, "Com": 6, "Comando": 17, "Como": [6, 17], "Da": 6, "De": [0, 1, 4, 6, 17], "Do": [8, 12, 14, 17], "E": [1, 6, 13], "Ela": [1, 6, 8], "Ele": [2, 3, 5, 6, 10], "Eles": [0, 4, 6], "Em": [2, 5, 6, 8, 10], "Essas": 0, "Esse": 4, "Esses": [5, 6], "Esta": [0, 1, 2, 4, 6], "Estas": 10, "Este": [2, 6, 8, 10, 14, 15], "Estes": 6, "For": [1, 2, 4, 5, 6, 7, 8, 10, 12, 13, 15, 16], "Fora": 0, "H\u00e1": [1, 5, 6, 14], "Isso": [2, 4, 6], "Isto": [0, 2, 3, 4, 5, 6, 10, 14], "Mas": [1, 4, 6], "NO": 6, "Na": 0, "Nem": 6, "No": [2, 5, 6, 8, 14], "Nos": 6, "N\u00f3s": [0, 1, 5], "O": [2, 8, 10, 12, 13, 17], "OU": 14, "Os": [0, 3, 4, 8, 10, 13, 17], "Por": [2, 3, 4, 5, 6, 10], "SE": 6, "Se": [1, 2, 3, 4, 6, 8, 10, 14], "Seu": 6, "Tamb\u00e9m": 6, "Um": 5, "Uma": [2, 4, 6, 8, 10], "_": [2, 12, 16], "__": [1, 2, 4], "__file__": [5, 7, 14], "__init": 2, "__init__": [2, 4, 5, 6, 7, 14, 15, 16], "__prerequisite__": 5, "__prerequisites__": 5, "__str__": [5, 8, 10], "_action": 10, "_adapt": 6, "_after_delet": 6, "_after_insert": 6, "_after_updat": 6, "_alt": 10, "_and": 12, "_antes_": 6, "_autocomplet": 16, "_autocomplete_search_fields": 16, "_before_delet": 6, "_before_insert": 6, "_before_updat": 6, "_bgcolor": 10, "_c": 10, "_checked": 10, "_class": [5, 10, 12, 16], "_cols": 10, "_common_filt": 6, "_count": 6, "_dashboard": [2, 3], "_dat": 10, "_db": 6, "_dbnam": 6, "_default": [2, 4], "_delet": 6, "_disabled": 10, "_documentation": [1, 3], "_enable_record_versioning": 6, "_extr": 6, "_format": 6, "_href": [5, 8, 10, 12, 14], "_hx": 16, "_id": [6, 10, 12, 16], "_insert": 6, "_listify": 6, "_method": 10, "_nam": [6, 10, 12, 16], "_next_url": 13, "_nonreserved": 6, "_onclick": 12, "_placehold": [12, 16], "_rows": 10, "_scaffold": [5, 8, 10, 12, 13, 14, 15, 17], "_search": 16, "_select": 6, "_selected": 10, "_sesson": 5, "_src": 10, "_style": [12, 16], "_tabl": [6, 12, 16], "_tablenam": 6, "_tag": 13, "_timings": 6, "_titl": [12, 16], "_type": [6, 10, 12, 16], "_u": 10, "_updat": 6, "_ur": 6, "_valu": [10, 12, 16], "_xmlns": 10, "aaabaaeaaqeaaaeaiaawaaaafgaaacgaaaabaaaaagaaaaeaiaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaapaaaaa": 8, "ab": [10, 12], "aba": 3, "abaix": 6, "abas": 3, "abbreviated": 12, "abc": [10, 12], "abert": [1, 3, 6], "ability": 15, "able": [5, 6, 12], "abort": [4, 6], "about": [6, 7, 13, 14, 15, 16, 17], "abov": [4, 5, 6, 7, 8, 12, 14], "abracadabr": 2, "abrir": 2, "absent": 2, "absolut": [2, 6, 15], "abspath": 4, "abstraction": [5, 15, 17], "abstra\u00e7\u00e3": 6, "acab": 6, "accdesc": 6, "accept": [4, 5, 12, 16], "acceptanc": 12, "accepted": [1, 2, 6, 12, 15, 16], "accepting": 10, "accepts": 12, "access": [4, 5, 6, 10, 13, 15, 16], "accessed": [6, 10, 12], "accessibl": 4, "accessing": [5, 6], "accnum": 6, "accomplish": 6, "accomplished": [6, 13, 15], "according": 8, "accordingly": 8, "account": 6, "acctype": 6, "aceit": [6, 11, 12], "aceler": 6, "acert": 2, "acess": [0, 2, 4, 5, 6], "acess\u00f3ri": 4, "achieved": [5, 15], "acim": [6, 7, 8, 13], "acion": 6, "acknowledgments": 17, "acompanh": 6, "acontec": 6, "acord": 6, "acrescent": 6, "across": [6, 8], "act": 6, "action": [4, 5, 6, 7, 10, 12, 13, 14, 15, 16], "action_button": 14, "action_token": [5, 13], "actions": [4, 5, 6, 14, 15, 17], "activ": [6, 13], "activat": [2, 13], "activated": 13, "activating": 2, "activiti": 6, "acts": 12, "actu": 6, "actual": [5, 6, 8, 13, 14], "actualiz": 6, "actually": [6, 8], "ac\u00e7\u00e3": [4, 5, 6, 7], "ad": 13, "adapt": 13, "adapter_args": 6, "adapters": [6, 16], "add": [1, 2, 4, 5, 6, 7, 8, 10, 11, 12, 13, 14, 15, 16], "added": [0, 2, 5, 12, 13, 16], "adding": [6, 12, 14], "addition": [6, 8], "additional": [4, 5, 7, 8, 12, 14], "additional_cl": 14, "additional_styl": 14, "address": [2, 12, 13], "adds": 16, "adi": 6, "adiant": 13, "adicion": [2, 5, 11, 12, 13, 14], "adicional": [2, 5, 6], "adi\u00e7\u00e3": 6, "admin": 15, "administr": [0, 6], "administrativ": 2, "administrator": 2, "adquir": 6, "advanc": [2, 13, 14], "advanced": [14, 17], "advantag": [2, 6, 8, 16], "advisabl": 6, "advised": 14, "afet": 6, "after": [5, 6, 8, 12, 13, 14, 16], "after_connection": 6, "after_delet": 6, "after_insert": 6, "after_updat": 6, "aftermath": 6, "again": [2, 4, 5, 6, 12, 16], "against": [6, 7, 10, 12, 14], "age": 6, "aggregat": 6, "agir": [6, 10], "agn\u00f3st": 4, "agor": [2, 4, 5, 6, 8], "agrad": 10, "agreg": 6, "aid": 6, "aims": 0, "aind": [2, 6, 13], "ajax": [8, 14, 16], "ajud": [0, 2, 4, 6, 15, 17], "ajust": 6, "aka": 1, "alcanc": 6, "aleat\u00f3r": 6, "alert": [5, 8, 10, 12, 15], "alerts": [5, 8, 15], "alex": 6, "alfar": [0, 1], "alg": 12, "algo": [5, 6, 7, 8], "algorithm": [5, 12], "algum": [4, 6, 10], "alguns": [0, 2, 4, 5, 6, 7, 8, 10], "ali": [6, 12], "aliment": 6, "all": [0, 1, 2, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "allocated": 12, "allow": [7, 8, 10, 12, 13, 14, 16], "allowed": [6, 7, 12, 13], "allowed_actions": 13, "allowed_attribut": 10, "allowed_overrid": 12, "allowed_patterns": 7, "allowed_schem": 12, "allowing": [1, 12, 16], "allows": [2, 3, 4, 5, 6, 7, 8, 12, 13, 14, 16], "almost": 5, "along": [2, 4, 10, 12, 16], "alphabetically": 12, "alphanumeric": 12, "already": [2, 4, 5, 10, 12, 13, 14], "also": [0, 1, 2, 4, 5, 6, 8, 10, 12, 13, 14, 15, 16], "alt": 10, "alter": [0, 2, 4, 5, 6, 11], "altering": 6, "altern": 6, "alternat": [5, 16], "alternativ": [2, 8, 12], "although": [2, 8, 12], "alvo": 6, "always": [0, 2, 4, 5, 6, 12, 16], "al\u00e9m": [4, 6, 14], "am": [12, 16], "amazon": 6, "ambas": 6, "ambient": 2, "ambigu": [4, 6], "ambos": [4, 5, 6], "among": [6, 12], "amount": 6, "ampli": 1, "an": [0, 1, 2, 3, 5, 6, 8, 10, 12, 13, 14, 15, 16, 17], "analis": [4, 6, 11], "analogy": 15, "ancestor": 10, "anchor": 16, "and": [0, 1, 2, 3, 4, 5, 10, 17], "andaim": 4, "andrew": 1, "anex": 6, "angle": 8, "angul": 16, "angularjs": 0, "aninh": [6, 10], "anonymous": [6, 8, 12], "anoth": [4, 5, 6, 8, 12, 13], "anotherpath": 5, "ansi": 6, "answer": 1, "anteced": 4, "anterior": [2, 6], "antes": [1, 6, 8, 10, 13, 14], "antig": 15, "any": [2, 3, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "anyhow": 2, "anyobj": 6, "anything": 4, "anyway": 6, "anywher": [8, 15], "an\u00e1lis": 6, "apag": 12, "aparec": 6, "aparent": 6, "apen": [2, 5, 6, 7], "api": [0, 6, 7, 10, 12, 13, 16], "api_version": 7, "apis": [0, 6, 13, 15], "aplic": [0, 2, 3, 4, 5, 14, 15], "apoi": 6, "apont": 6, "app": [0, 1, 3, 5, 6, 7, 8, 10, 11, 12, 13, 14, 15, 16, 17], "app1": 5, "app1_session": 5, "app2": 5, "app_fold": 15, "app_nam": [2, 4, 5, 6], "app_watch_handl": 4, "appadmin": [0, 6], "appe": [6, 12], "append": [6, 10, 12, 14, 16], "append_id": 14, "appended": [5, 6], "apple": 12, "appli": [6, 12, 16], "application": [2, 5, 6, 8, 12, 13, 15, 16], "applications": [0, 2, 3, 4, 6, 12, 13, 14], "applied": [5, 12, 14, 16], "apply": [0, 5, 12, 13, 14], "applying": [6, 14], "appnam": [2, 5, 13, 15], "appname_session": 5, "approach": [6, 15], "appropriat": [6, 12], "appropriately": 6, "approv": 13, "apps": [0, 1, 2, 3, 4, 5, 6, 8, 13, 15], "apps_fold": 2, "aprend": 1, "apresent": 8, "apropri": 6, "aproxim": 6, "apt": 13, "ap\u00f3s": [2, 6, 14], "aqu": [2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13, 14], "aquel": [6, 13], "arbitrary": [4, 13], "arbitr\u00e1ri": 6, "archive_db": 6, "archive_nam": 6, "are": [0, 1, 2, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "aren": 6, "args": [1, 2, 6], "argument": [2, 4, 5, 6, 8, 10, 12, 13], "arguments": [2, 5, 6, 8, 10, 12, 13, 15], "arithmetic": 12, "armazen": [0, 2, 5, 6, 10], "around": [1, 15], "arquiv": [0, 2, 3, 4, 5, 6, 13, 17], "arrang": 12, "array": 16, "arriv": [0, 6], "as_ordered_dict": 6, "asci": 12, "asid": 16, "asked": 2, "asking": 5, "aspas": 6, "assert": 6, "assets": 2, "assigned": [6, 12, 13, 15], "assigning": [15, 16], "assignment": 8, "assigns": 16, "assim": [6, 8], "assinatur": [4, 5], "assist": 4, "assistent": 10, "assoc": [6, 11], "associated": [6, 12, 13], "assum": [2, 5, 6, 7, 11, 12], "assumed": 15, "assuming": 5, "async": 16, "asynci": 17, "at": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "atend": [2, 6], "ativ": [2, 6], "atrav\u00e9s": [6, 8, 10, 13], "atribut": [5, 10], "atribu\u00edd": 6, "attached": [6, 13], "attaching": 15, "attacks": [5, 10], "attempted": 12, "attempting": 6, "attempts": [6, 13], "attention": 6, "attribut": [4, 5, 6, 10, 12, 14, 15, 16], "attributes_plugin": 16, "attributespluginhtmx": 16, "attrs": [12, 14, 16], "atual": [2, 6], "atualiz": [2, 17], "aug": 12, "august": 12, "aul": 14, "aut": 10, "autentic": 6, "auth": [0, 2, 4, 6, 8, 10, 16, 17], "auth_group": 13, "auth_groups": 13, "auth_plugins": 13, "auth_us": [5, 6, 13], "auth_user_tag_groups": [6, 13], "auth_user_tagged_groups": 13, "authenticat": 13, "authenticated": [5, 6], "authentication": [5, 14, 17], "authoriz": [6, 7], "authorization": [5, 17], "authorized": 13, "auto_import": 6, "auto_process": [14, 16], "autocomplete_query": 16, "autodelet": 6, "autogenerated": 6, "automat": [2, 4, 6, 8, 10, 13, 14], "automatic": [4, 6, 8, 15], "automatically": [2, 3, 4, 5, 6, 12, 13, 14, 15, 16], "autoriz": 6, "auxili": [5, 6, 8, 10], "availabl": [1, 2, 6, 8, 10, 13, 15, 16], "avali": [6, 8], "avanc": 17, "avis": [5, 6, 13], "avoid": [1, 2, 5, 6, 12], "avoided": 8, "avoiding": 5, "avoids": 6, "awar": 6, "awesom": [8, 14], "axel": 0, "axolotl": 0, "azul": 4, "a\u00e7\u00e3": [4, 5, 6, 13, 17], "a\u00e7\u00f5": 5, "a\u00e7\u00fac": 5, "b": [5, 6, 8, 10, 12, 15, 16], "back": [5, 6, 12], "backend": 6, "backends": 6, "background": [2, 4, 12, 16], "backported": 6, "backslash": 4, "backup": [2, 6, 12], "backward": 12, "backwards": [0, 12], "bad_days": 6, "bails": 6, "banan": 12, "banc": [0, 1, 3, 4, 5, 13], "bar": [8, 14], "barc": 6, "barr": 4, "barri": 0, "bas": [0, 2, 4, 8, 14, 16], "base64": [6, 8, 16], "base_dn": 13, "baseadapt": 6, "based": [0, 2, 3, 4, 5, 7, 8, 12, 13, 14, 15, 16], "bash": 2, "basic": [2, 5, 17], "basically": 16, "bast": 2, "bat": 2, "batman": [7, 12, 14], "battl": 0, "be": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "beasley": 0, "becaus": [0, 2, 4, 5, 6, 8, 10, 12, 14, 16], "becom": [12, 16], "bed": 11, "been": [0, 2, 5, 6, 8, 12], "befor": [2, 5, 6, 8, 12, 13, 14], "before_delet": 6, "before_insert": 6, "before_updat": 6, "begin": [12, 14], "beginners": 2, "beginning": [8, 12, 13], "behavior": [6, 12, 15, 16], "behaviour": [2, 14], "being": [5, 6, 7, 8, 12, 16], "believ": [0, 5], "belong": [13, 15], "belonging": 6, "belongs": 13, "below": [5, 6, 7, 12, 14], "bem": [0, 4, 5, 6, 13], "benefits": 16, "benef\u00edci": 6, "best": [2, 5, 6], "bett": [0, 1, 2, 4, 6, 14, 15, 16], "between": [5, 10, 12, 15], "beyond": 12, "bgcolor": 10, "bibliotec": [0, 4, 11], "big": 15, "bigint": 6, "bigint_id": 6, "bilhet": [0, 3, 6], "bilh\u00e9t": 0, "bin": [1, 2], "binari": 2, "binary": 6, "bind": 16, "bin\u00e1ri": 6, "birthplac": 6, "bit": 12, "bitbucket": 1, "black": [8, 12], "blank": [12, 14], "blanks": 12, "blink": 16, "blob": [1, 6], "bloc": [8, 10], "block": [13, 16], "blockquot": 10, "blocks": 8, "blog": [1, 6, 10], "blog_post": 6, "bloqu": 13, "blu": [4, 6, 12, 15], "bmp": 12, "boas": 2, "boat": 6, "bob": 6, "body": [4, 8, 13, 14, 16], "bold": 10, "bom": 2, "bonit": 6, "book": 6, "boolean": [6, 14], "booleans": 6, "boost": [6, 8], "bootstrap": 14, "bord": 16, "botar": 0, "both": [1, 2, 5, 6, 8, 12, 15], "bottl": [0, 4, 5, 8, 15, 16], "bottle_app": 2, "bottlepy": [4, 5], "bottom": 12, "bot\u00e3": 3, "bot\u00f5": [3, 17], "boundari": 12, "boundary": 12, "box": [0, 6, 12], "br": [8, 10], "bracket": 8, "brackets": [8, 12], "branch": [1, 2], "break": [2, 6], "breaking": 6, "breaks": 12, "breez": 1, "brev": 4, "briefly": 2, "broken": [0, 6, 12], "brows": [1, 2, 3, 5, 7, 8, 14, 16], "browsers": 16, "browsing": 3, "bruc": [7, 14], "brut": 6, "bsd": 1, "buff": 6, "bug": 6, "bugs": 1, "build": [1, 2, 4, 5, 10, 14, 16], "building": [4, 12, 16], "built": [0, 1, 4, 6, 8, 12, 16, 17], "bulk_insert": 6, "bulm": [12, 14, 16], "bunch": 2, "busc": [3, 6, 14], "busing": 16, "but": [0, 1, 2, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "button": [3, 4, 5, 12, 14, 16], "buttons": [10, 12, 14, 16], "by": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "bypass": [12, 13], "bypassed": 13, "byte": 12, "bytecod": 8, "bytes": 6, "b\u00e1sic": [0, 1, 6, 17], "c": [1, 2, 3, 5, 6, 8, 10, 12, 15], "ca": 12, "cabec": [10, 14], "cabe\u00e7alh": [4, 10], "cach": [0, 2, 4, 5, 12], "cache_db_select": 6, "cacheabl": 6, "cached": 5, "cache\u00e1vel": 6, "caching": [6, 17], "cachorr": 11, "cad": [2, 4, 5, 8, 11, 14], "caiu": 6, "caix": [0, 6, 10], "calcul": 6, "calend": 14, "call": [0, 5, 6, 8, 12, 13, 16], "callabl": [10, 12], "callback": [6, 12, 13, 16], "callback_url": 13, "called": [1, 2, 5, 6, 7, 8, 10, 12, 14, 15, 16], "calling": [5, 6, 8], "calls": [2, 6, 8, 16], "cam": [6, 11], "caminh": [2, 4, 6, 14], "camp": [5, 7, 10, 12, 17], "can": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13, 14, 15, 16], "cancel": [12, 16], "cancel_attrs": 16, "cannot": [2, 5, 6, 8, 12, 16], "capabiliti": [14, 16], "capac": 0, "capaz": [1, 2], "capitaliz": 16, "caputur": 16, "cap\u00edtul": [2, 4, 5, 15], "car": 6, "caract": [6, 10], "caracter": 4, "caracter\u00edst": 17, "card": 6, "careful": [5, 6, 8, 15, 16], "carg": 6, "carl": 6, "carreg": [0, 6], "carroll": 0, "carry": 15, "cart": 5, "car\u00e1ct": [4, 6], "cas": [0, 1, 2, 3, 4, 5, 8, 10, 12, 13, 14, 15, 16], "cascading": 6, "cascat": 6, "case_sensitiv": 6, "cassi": 0, "caus": [6, 12], "caveat": [6, 8, 15], "caveats": 17, "cd": 2, "cdnjs": [8, 14], "celery": 17, "cent": [5, 6, 8], "century": 12, "ceo": [7, 14], "cerc": 6, "cert": [1, 2, 6, 14], "certain": [6, 8, 12, 14], "certez": 6, "certificat": 2, "certifiqu": [6, 11], "cf": 4, "cgi": 12, "cha": 6, "challeng": 13, "cham": [2, 4, 5, 7, 8, 11, 14], "chang": [1, 2, 3, 5, 6, 7, 8, 12, 13, 14, 15, 16, 17], "change_email": 13, "change_password": [8, 13], "changed": [2, 3, 4, 5, 6, 8, 12, 15, 16], "changed_fil": 4, "changing": 6, "channel": 1, "chapt": [3, 4, 5, 6, 8, 10, 12, 14], "chapters": [1, 5], "char": 6, "charact": [6, 12], "characters": [6, 12], "charg": [2, 15], "chars": 13, "chat": 2, "chats": 1, "chav": [4, 8, 10, 11, 14], "chec": 11, "check": [3, 4, 5, 6, 12, 13, 14], "check_": 16, "check_reserved": 6, "checkbox": [8, 10], "checkboxwidget": 12, "checked": [10, 12], "checking": [1, 12, 13, 15], "checks": [2, 6, 8, 12, 13], "cherry": 12, "chicag": 6, "choic": [1, 12, 14], "choos": [12, 13], "choosen": 6, "chrom": [3, 16], "cient": 6, "cinc": 6, "circul": 6, "circumstanc": 5, "cit": [6, 10, 12], "cit0801": 7, "cit0802": 7, "cit1601": 16, "clar": 6, "clark": [7, 14], "clash": 12, "class": [5, 6, 8, 10, 12, 13, 15, 16], "class_inner_exceptions": 16, "class_styl": 14, "classific": [6, 14], "claud": 6, "claus": 6, "cle": 12, "clean": [5, 10], "cleanup": 0, "clearly": 16, "clev": 12, "cli": [1, 2], "clic": 14, "clich": 5, "click": [3, 10, 12, 14, 16], "clickabl": 14, "clicked": [14, 16], "clicks": [6, 16], "client": [0, 7, 12, 13, 16], "client_id": 13, "client_ip": 5, "client_secret": 13, "clients": 5, "clientsid": 16, "cliqu": [3, 14], "clock": 12, "clon": [2, 4, 6, 16], "cloned": 2, "clos": [6, 10], "closed": [6, 8], "closing": [5, 6], "cloudflar": [8, 14], "cl\u00e1usul": [6, 8], "cmd": 2, "cn": 13, "co": [6, 12], "coa": 6, "cod": [1, 2, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "codific": 6, "coding": 1, "cois": 6, "colegial": 13, "collapsibl": 10, "collection": [0, 15], "collections": 2, "collects": 2, "colnam": 6, "coloc": 17, "colon": 8, "color": [4, 6, 8, 10, 12, 16], "colors": [4, 6], "cols": 10, "colspan": 10, "column": [6, 14], "columns": [6, 17], "colun": [6, 14], "comand": 6, "comando": [3, 4, 6, 10, 17], "combin": [4, 5, 10, 14], "combined": [5, 6, 12], "come": [0, 5], "comec": [1, 2, 4, 6], "comes": [0, 5, 8, 12, 13, 14, 15, 16], "comet": 6, "coming": 5, "comm": [2, 16], "command": [2, 4, 6, 8], "commands": [2, 4, 6, 8, 10], "comment": [6, 10], "commit": [5, 7, 14, 16], "commits": [5, 6], "committed": [6, 15], "common": [2, 4, 5, 8, 12, 13, 15, 16], "common_filt": 6, "common_filters": 6, "commonality": 8, "communicat": 5, "communication": 6, "communications": 5, "community": [0, 6], "compact": 6, "company": 14, "compar": [6, 15], "compared": 0, "comparison": 12, "compartilh": [5, 6], "compat": 6, "compatibility": 12, "compatibl": [0, 1, 10, 12], "competitor": 0, "compil": [4, 8, 10, 12], "compilation": 8, "compiled": [4, 8, 10, 12], "compiled_css": 4, "compiling": 8, "complet": [0, 2, 6, 10, 12, 14, 16], "completed": [0, 6], "completely": [6, 8, 13], "complex": [1, 2, 4, 5, 6, 8, 10, 13, 15, 16], "complexiti": 16, "complexity": 16, "compliant": 16, "complicated": 5, "component": [0, 4, 5, 8, 10, 12, 13, 16], "component_1": 16, "components": [0, 3, 10, 12, 16], "comport": [4, 6, 10, 14], "compos": 2, "composing": 5, "compost": [6, 10], "compreend": [1, 14], "compressed": 4, "comprim": 3, "compriment": 6, "compris": 3, "compromet": [4, 6], "compromis": 0, "comput": 1, "computed": 17, "computing": 16, "comp\u00f5": 6, "comum": [5, 6], "comunic": 6, "comuns": 3, "concaten": 6, "concatenat": 10, "concatenating": 10, "conceived": 6, "concept": [0, 13], "conch": 2, "concorrent": 0, "concurrency": [6, 16], "concurrent": 16, "concurrently": [2, 12, 16], "cond": 5, "condicion": 8, "condicional": 6, "condition": [6, 12, 17], "conditions": [6, 12], "condi\u00e7\u00e3": 6, "condi\u00e7\u00f5": 6, "conect": [6, 13], "conex\u00e3": 4, "conf": 6, "confiabil": 1, "config": [2, 4], "configur": [3, 13, 14, 15, 16, 17], "configuration": 1, "configurations": 2, "configured": [5, 12, 15], "confirm": [2, 12, 14], "confirmation": 16, "confirmations": 16, "confirms": 13, "conflicts": 6, "conflit": [0, 2, 4, 6], "conform": [6, 13], "confund": 6, "confus": 6, "conhec": [1, 6], "conjunt": [6, 10, 11, 14], "conn": 5, "connect": [3, 6], "connecting": 6, "connection": [5, 6, 12], "connectionpool": 6, "connections": [5, 6, 15], "cons": 6, "conseg": 6, "consegu": 6, "consequenc": [6, 12, 16], "consequently": 12, "consid": [5, 8, 10, 12, 14], "consider": [6, 8, 10], "considered": [5, 6, 8, 15], "consist": [6, 15], "consistency": 8, "consistent": 5, "consists": [6, 14], "consol": [2, 10, 13, 16], "constant": 12, "constraining": 15, "constru": [6, 10, 14], "constructing": 6, "construction": 4, "constructor": [6, 13, 17], "constructors": 12, "construtor": [5, 10, 12, 17], "constru\u00e7\u00e3": [6, 10, 14], "constru\u00edd": [6, 14], "constr\u00f3": 6, "consult": [1, 7, 13, 14], "consulta1": 6, "cont": [2, 5, 10, 11, 13], "contador": [5, 6], "contag": 6, "contain": [2, 4, 5, 6, 8, 10, 12, 13, 16], "contained": [10, 12, 14], "containing": [0, 2, 5, 12, 13, 14, 16], "contains": [3, 5, 7, 8, 11, 12, 14, 15, 16], "contect": 8, "contenh": 5, "content": [2, 4, 5, 6, 8, 10, 12, 14, 15, 16], "contents": [8, 10, 16], "context": [3, 5, 6, 8], "contextlib": 6, "contexts": 5, "conte\u00fad": [4, 6, 10], "continu": [0, 6, 8, 16], "contr": 6, "contribu": 17, "contributed": 0, "control": [2, 8, 12, 13, 14, 16], "controll": [5, 6, 8, 10, 12, 13, 14, 15, 16], "controllers": [4, 6, 8, 10, 12, 15, 16], "controls": 12, "contr\u00e1ri": [0, 4, 6, 8], "cont\u00e9m": [2, 4, 5, 6], "cont\u00eain": 6, "cont\u00eam": [6, 11], "convenienc": 5, "convenient": [6, 17], "convention": [8, 12, 15], "conventions": [4, 6], "conven\u00e7\u00e3": 4, "conversion": [12, 17], "convers\u00e3": 6, "convert": [4, 6, 10], "converted": [1, 6, 12], "converting": 6, "converts": 12, "cooki": [0, 4, 6, 12, 16], "copi": 2, "copied": 2, "copy": [1, 2, 3, 4, 6, 14], "copyfileobj": 6, "copying": [2, 8, 10, 17], "cor": [1, 2, 4, 5], "cord": [4, 6, 11], "corey": 1, "corn": 14, "cornerston": 0, "corp": [8, 10], "corr": 17, "correct": 13, "correctly": 12, "corrent": 6, "correspond": [2, 4, 6, 11], "correspondent": [4, 6, 10], "corresponding": [3, 6, 13, 14, 15], "corresponds": [2, 6, 10], "corret": 6, "corrig": 1, "corromp": 6, "corrupted": 6, "corruption": 6, "costum": 6, "cot": 6, "cota\u00e7\u00e3": 6, "couchdb": 6, "couchdbadapt": 6, "could": [1, 2, 4, 6, 8, 10, 12, 13, 15], "count": [5, 7, 13, 14, 16], "coupl": 16, "cours": [1, 8], "cp": 2, "creat": [0, 1, 2, 4, 5, 6, 8, 12, 13, 14, 16], "create_form": 12, "create_thing": 12, "created": [0, 2, 4, 5, 6, 8, 12, 13, 16], "created_by": 6, "created_on": 6, "creating": [1, 2, 6, 13, 15, 16, 17], "creation": 6, "creativ": 12, "creativity": 13, "credential_decod": 6, "cresc": 6, "cri": [2, 3, 4, 5, 6, 8, 10, 13, 14], "cria\u00e7\u00e3": [2, 6, 14], "crit": 12, "critical": 2, "crit\u00e9ri": 6, "cross": [5, 10], "crossorigin": 8, "crt": [2, 6], "crud": [3, 12, 16], "cruz": [1, 6], "crypt": 2, "cs": 5, "csrf": [5, 12], "csrf_protection": 12, "csrf_session": 12, "css": [1, 4, 5, 8, 10, 12, 13, 14, 16], "csv": 15, "ct": 5, "ctrl": [2, 3], "cubrid": 6, "cubridadapt": 6, "cubriddb": 6, "cuj": 6, "current": [5, 6, 10, 13, 14, 15, 16], "current_record": 6, "currently": [2, 5, 8], "curs": 1, "cursor": [6, 16], "curt": 6, "custom": [0, 4, 5, 6, 8, 10, 15, 16, 17], "custom_check": 12, "custom_qualifi": 6, "customiz": [8, 12, 14], "customizabl": [12, 14], "customization": 12, "customizing": 17, "cx_oracl": 6, "c\u00edclic": 6, "c\u00f3dig": [4, 5, 6, 8, 10], "c\u00f3p": 6, "d": [2, 7, 10, 12], "dad": [0, 1, 3, 4, 5, 13, 17], "daemon": 2, "daemons": 16, "dal": [2, 4, 7, 12, 14, 16, 17], "dan": 0, "danc": 13, "dand": 4, "dangerous": 15, "daquel": 6, "dar": 6, "dash": 12, "dashboard": [2, 4, 6, 8, 12, 16, 17], "dashboard_mod": 2, "dat": [0, 2, 5, 6, 7, 8, 10, 13, 14, 15, 16], "data_label": 16, "databas": [0, 1, 3, 7, 13, 14, 15, 16, 17], "datalist": 16, "datetim": [4, 5, 6, 7, 12, 16], "datetimewidget": 12, "day": 12, "days": 12, "db": [2, 3, 4, 5, 7, 10, 12, 13, 14, 15, 16], "db1": 6, "db2": 6, "db2adapt": 6, "db2ibm": 6, "db2pyodbc": 6, "db_a": 6, "db_b": 6, "db_codec": 6, "db_fold": [5, 7, 14], "db_nam": 6, "db_uid": 6, "dbadmin": 4, "dbi": 12, "dbo": 6, "dbset": 12, "dbstor": 5, "dc": 13, "dd": 12, "deal": [6, 16], "dealfar": 0, "debounc": 16, "debug": [1, 2, 5, 6, 8], "debugg": 1, "debugged": 8, "debuggers": 15, "debugging": [1, 4], "decid": [6, 12, 14], "decim": 4, "decimal": [6, 12], "decimals": 12, "decl": [4, 6], "declar": [0, 4, 5, 6, 8], "declared": 5, "decod": 6, "decode_credentials": 6, "decoded": 6, "decomp\u00f5": 6, "decor": [1, 4, 17], "decorated": 15, "decorator": [4, 5, 6, 15], "decorators": [5, 15], "dedic": [1, 4, 15], "dedicated": [1, 5, 10], "def": [4, 5, 6, 7, 10, 12, 13, 14, 15, 16], "default": [2, 3, 4, 5, 6, 7, 10, 12, 13, 14, 15, 16], "defaults": [5, 12, 14, 15], "deferred": [6, 16], "defin": [0, 4, 5, 8, 10, 12, 14, 16], "define_tabl": [5, 7, 12, 13, 14, 15], "defined": [2, 4, 5, 6, 8, 12, 13, 14, 15, 16], "defining": 14, "definit": 12, "definition": [6, 7, 12, 14], "definitions": [6, 7, 15], "defini\u00e7\u00e3": 6, "defini\u00e7\u00f5": 6, "deform": 11, "deix": 13, "del": [5, 6, 10], "delay": 16, "delaying": 16, "deleg": 6, "delet": [2, 4, 7, 12, 14, 16], "deletabl": [12, 14], "delete_record": 6, "deleted": 6, "deleting": [6, 14], "deletion": 6, "deletions": 6, "delimit": [0, 6, 8], "delimiters": [5, 15], "delt": 16, "dem": [1, 2, 16], "demand": 6, "denormaliz": 7, "denormalization": 6, "dentr": [0, 2, 4, 6, 14], "deny": 7, "depend": [4, 5, 6], "dependenc": [0, 2, 5, 15], "dependent": [2, 3, 4, 5], "depending": [6, 8, 12, 14], "depends": [5, 6, 15], "deploy": 2, "deployment": 1, "deployment_tools": 2, "depo": [2, 3, 6], "deprecated": [12, 16], "depur": [6, 8], "deriv": 6, "derived": [6, 12], "desat": 6, "desativ": 6, "desc": 14, "descart": 6, "descendant": 10, "descobert": [2, 11], "descompact": 2, "descrev": 6, "describ": [3, 12], "described": [2, 4, 5, 6, 12], "description": [6, 7, 12, 13], "descriptiv": 12, "descrit": [2, 4, 6, 14], "desd": [5, 6], "desej": [1, 2, 5, 6, 13, 14], "desempenh": 6, "desencad": 3, "desenvolv": 0, "desenvolvedor": [1, 8, 13, 14], "desfaz": 6, "design": [0, 13, 16, 17], "designed": [0, 4, 6, 8, 12, 16], "desir": 8, "desired": [5, 12], "desloc": 6, "desnormaliz": 7, "despej": 6, "dess": [0, 5, 6, 13], "dest": [4, 6, 12], "detail": [6, 10, 14, 16], "detail_fields": 12, "detailed": [2, 14], "details": [0, 1, 5, 6, 7, 8, 12, 14], "detalh": [6, 14], "determin": [4, 5, 6, 11, 12, 13, 14], "determined": [8, 12], "determining": 5, "deterministic": 5, "dev": [1, 2, 3, 4, 5, 6, 8, 10, 13, 14], "develop": [5, 6, 8, 13, 14, 15], "developers": [0, 1, 6, 13, 16], "developing": 4, "development": [0, 1, 4, 6], "development_tools": 2, "devic": 8, "devolv": [6, 8], "di": [0, 5], "diagr": 7, "dialect": 6, "dialects": 6, "dialet": 6, "dic": 17, "dicion\u00e1ri": [10, 11, 12], "dict": [4, 5, 6, 11, 12, 14, 15, 16], "dictionari": 6, "dictionary": [4, 5, 6, 10, 12, 15], "did": [0, 4, 16], "dif": 6, "diferenc": 6, "diferent": [2, 5, 6, 11, 14], "diff": 6, "differenc": [6, 12, 15], "different": [0, 2, 5, 6, 8, 12, 13, 15, 16], "differs": [6, 14], "difficult": [2, 16], "dif\u00edcil": 1, "dig": 6, "digit": [12, 13], "dimensions": 12, "dinam": 10, "din\u00e2m": [6, 17], "dir": [2, 12, 16], "direct": 6, "directiv": [2, 8, 12], "directly": [2, 4, 6, 7, 10, 12, 13, 14, 16], "directory": 13, "direit": [3, 6], "diret": [1, 5, 6, 8], "diret\u00f3ri": 4, "dirnam": [5, 7, 14], "disabl": [6, 14], "disabled": [7, 10, 12], "disallow": 12, "discord_client_id": 13, "discord_client_secret": 13, "discount": 6, "discounted_total": 6, "discounted_total_pric": 6, "discounted_unit_pric": 6, "discriminator": 13, "discuss": 3, "discussed": [6, 8, 10, 12], "discussion": 6, "discuss\u00e3": 1, "discuss\u00f5": 1, "discut": 6, "disk": [5, 6], "dismissal": 15, "dismissibl": 5, "dispar": 6, "display": [5, 12, 13, 14, 16], "displayed": [3, 6, 10, 12, 14, 16], "displaying": [5, 12, 14], "displays": [13, 14], "dispon": 6, "dispon\u00edv": 1, "disposit": [4, 5, 13], "diss": [4, 6, 14], "distinct": [8, 12], "distinction": 6, "distin\u00e7\u00e3": 6, "distribu": 6, "distribut": 6, "distributed_transaction_commit": 6, "distribution": 6, "ditched": 0, "div": [4, 5, 8, 12, 15, 16], "divisibl": [8, 12], "division": [8, 10], "divis\u00e3": 8, "divmod": 6, "diz": [4, 6, 13, 14], "djang": [0, 1, 15], "do_connect": 6, "dobr": 6, "dobrag": 6, "doc": 1, "dockerfil": 2, "docs": [1, 2, 4], "doctor": 6, "doctyp": [8, 14], "document": [6, 8, 10, 12, 16], "documentation": [3, 12, 16], "documentations": 5, "documented": [5, 12], "does": [0, 2, 5, 6, 8, 12, 13, 14, 15, 16], "doesn": 5, "dog": [11, 12, 16], "doh": 12, "doing": [6, 12, 16], "dois": [0, 5, 6, 8], "dom": [8, 17], "domain": [12, 13], "don": [2, 4, 6, 8, 12, 13, 14, 15], "dot": 12, "doubl": [2, 6, 8], "doubt": 14, "down": [12, 16], "download": [2, 12], "download_url": 12, "downs": 6, "downsid": [6, 15], "dramat": 6, "driv": 6, "driven": 0, "driver_args": 6, "drivers": 6, "drop": 12, "dropdown": [12, 14, 16], "dropdowns": 16, "dropping": 6, "dsn": 6, "duas": [5, 6], "due": [6, 7, 12], "dummy": [6, 8], "dummyrespons": 8, "dump": 5, "dumpfil": 6, "dumps": [6, 16], "duplicat": 6, "durability": 7, "during": 14, "dynamic": [4, 8, 13], "dynamically": [6, 7, 8, 12], "d\u00e1": [0, 2, 14], "d\u00edgit": [4, 6], "ea": 6, "each": [2, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "earli": 16, "early": 5, "easi": [7, 8], "easiest": 6, "easily": [6, 8, 10, 12, 14], "easy": [5, 8, 12], "ebook": 1, "echo": 4, "ecosyst": 16, "edge": 16, "edif\u00edci": 5, "edit": [0, 2, 3, 4, 8, 12, 13, 14, 15, 16], "edit_sidec": 16, "editabl": [14, 15], "editing": [8, 10, 12, 13, 14], "editor": [1, 8], "editors": 8, "edi\u00e7\u00e3": 0, "edi\u00e7\u00f5": 3, "education": 2, "efeit": 6, "efet": 6, "effect": [3, 6, 12], "efficient": 0, "efficiently": [1, 15], "efforts": 1, "efg": 10, "eficient": [5, 6], "eith": [6, 12], "el": 10, "element": [6, 8, 10, 12, 14, 16], "elements": [6, 10, 12, 16], "elev": 6, "elimin": [6, 14], "else": [2, 6, 12, 13, 14, 15, 16], "elt": 16, "el\u00e9tr": [4, 5, 13], "emacs": 8, "email": [2, 8, 12, 13, 15], "emails": 12, "emails_onvalidation": 12, "embed": 10, "embedded": [8, 12], "embedding": 8, "ember": 12, "embor": 6, "emerging": 16, "emit": [3, 6], "employ": 5, "employe": 14, "empreg": 14, "empres": 14, "empty": [2, 4, 12, 16], "empty_regex": 12, "en": [5, 7], "enabl": [1, 5, 7, 10, 13, 15, 16], "enable_record_versioning": 6, "enabled": [5, 7, 13, 15], "encaix": 4, "encapsulat": [8, 10], "encerr": 8, "enclosed": 6, "enclosing": 8, "encod": 6, "encoded": [5, 6, 12, 16], "encoding": 6, "encontr": [4, 6, 8, 11, 13], "encrypted": [2, 5], "encryption": 0, "end": [4, 6, 8, 12, 13, 14, 16], "enderec": 6, "ending": 8, "endpoint": [13, 16], "ends": [6, 8, 15], "enforc": [5, 12], "enforced": [6, 12, 15], "enfrent": [1, 6], "engin": [6, 12], "engineering": 2, "english": 5, "enough": [12, 13], "enquant": [0, 6, 8], "enqueu": 16, "enqueue_run": 16, "enqueueing": 16, "ensin": 13, "ensur": 12, "entant": [6, 8, 10, 14], "entend": 6, "enter": [4, 12, 13], "entered": 10, "entering": 5, "enterpris": [1, 13], "entidad": 6, "entir": [8, 15, 16], "entity_quoting": 6, "entrad": [4, 6, 10, 11], "entri": [7, 12, 14], "entropy": 12, "entry": [0, 6, 15], "ent\u00e3": [2, 4, 6, 13], "env": [1, 15], "envelop": 16, "envi": [10, 14], "environ": [5, 15], "environment": [0, 1, 4, 5, 6], "environments": 1, "envolt": 11, "envolv": 6, "eo": 6, "epub": 1, "eq": 7, "equal": [7, 12, 13, 16], "equals": [10, 13], "equip": 5, "equivalent": [4, 5, 6, 10, 12, 15], "equivalently": 10, "errad": 6, "errlog": 5, "erro": [2, 3, 6], "error": [2, 3, 5, 6, 7, 8, 10, 12, 16], "error_messag": 12, "errorlog": 2, "errors": [1, 5, 6, 7, 12, 15], "escap": [6, 8, 10], "escaped": [6, 8, 10], "escaping": [6, 8], "escolh": [1, 4, 6], "escond": 6, "escrav": 6, "escrev": [6, 8, 10], "escrit": [6, 8], "espac": [6, 11, 14], "espec": [5, 6, 10], "especial": [2, 4, 6, 11], "especializ": 6, "especially": [0, 2, 5, 12, 13], "especif": [4, 6], "especific": [4, 5, 6], "especifiqu": 14, "espec\u00edf": [1, 2, 6], "esper": [4, 5, 6], "esprim": 4, "esquec": 6, "esquem": 6, "esquerd": [6, 14], "estabelec": 6, "establish": 6, "established": 6, "establishing": 15, "estad": [5, 6], "estam": 6, "estar": [4, 6, 10], "estend": [0, 5, 6], "estil": 14, "estiv": 6, "estrangeir": [1, 14], "estreit": 6, "estrutur": [4, 5, 6, 11], "est\u00e1t": [10, 17], "est\u00e3": [5, 6, 7, 10, 13], "etap": 6, "etc": [4, 5, 6, 7, 11, 15], "etiquet": [6, 10], "eval": 16, "evaluat": [5, 12, 16], "evaluated": [6, 7], "even": [1, 4, 5, 6, 8, 10, 12, 14, 15, 16], "event": 6, "event_tim": 6, "events": [2, 16], "eventually": 5, "ever": 6, "every": [0, 5, 6, 13, 14, 15, 16], "everyon": [0, 1], "everything": [2, 15, 16], "evit": [0, 2, 6, 8, 12], "evolution": 0, "ex": 6, "exact": [8, 15], "exactly": 5, "exampl": [1, 2, 4, 5, 6, 8, 10, 11, 13, 17], "exat": [6, 8], "excellent": [1, 14], "except": [2, 5, 6, 8, 10, 12, 13, 16], "exception": [5, 6, 12, 13, 16], "exceptions": [4, 5, 16], "excep\u00e7\u00e3": 8, "excerpt": 8, "excet": [5, 6], "exce\u00e7\u00e3": [4, 5, 6, 8], "exce\u00e7\u00f5": 4, "exclu": 6, "exclud": 12, "exclus": 6, "exclusiv": [12, 13], "exclusively": [0, 5, 6], "exclus\u00e3": 14, "exclu\u00edd": [2, 6], "exe": 2, "execu": [2, 4], "execut": [0, 2, 3, 6, 12], "executabl": [6, 10], "executed": [2, 5, 6, 8, 15, 16], "executing": 16, "execution": [1, 16], "exempl": [2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "exercis": 5, "exerc\u00edci": 13, "exib": [3, 6, 8, 10, 14], "exibi\u00e7\u00e3": [13, 14], "exig": [1, 2, 6, 13], "exist": [1, 2, 4, 5, 6, 8, 12, 16], "existenc": 13, "existent": [2, 6, 13, 14], "existing": [2, 5, 6, 12], "exists": [5, 6], "exit": 2, "exiting": 5, "exp": [4, 6], "expand": 3, "expect": [6, 12], "expected": 15, "expects": [2, 10], "experienc": [1, 13], "experienced": 0, "experiment": [1, 12], "experimental": [2, 5], "experimenting": 1, "expir": 5, "expiration": 5, "explain": 12, "explained": [5, 6, 12, 14], "explanatory": 6, "explic": [4, 6], "explicit": [0, 2, 4, 5, 6, 8, 12], "explicitely": 16, "explicitly": [0, 2, 5, 6, 8, 10, 12], "explict": 6, "exploring": 3, "expl\u00edcit": [6, 13], "expor": [4, 13], "export": 17, "export_to_csv_fil": 6, "exporting": 6, "expos": [4, 5], "expost": 7, "express": 12, "expressed": 12, "expression": [4, 6, 8, 11, 12, 14], "expressions": [10, 12, 16], "express\u00e3": [6, 7, 11, 14], "express\u00f5": 11, "exp\u00f5": [0, 3, 4, 6, 13], "extend": [5, 6, 12, 13, 15, 16], "extended": 8, "extends": [6, 8, 16], "extensibl": 15, "extension": [12, 15], "extensions": 12, "extensively": 3, "extens\u00e3": 6, "extern": 2, "external": 6, "extra": [5, 6, 12, 13], "extra_fields": 5, "extract": [6, 12], "extracted": 6, "extracts": 16, "extras": 6, "extra\u00edd": 6, "extrem": 6, "f": [6, 13, 14, 15, 16], "fa": 14, "facebook": [0, 5], "facil": [4, 5, 6], "facilitat": 4, "fact": [4, 5, 15], "factori": 10, "fail": [6, 8, 12, 16], "failed": 6, "fails": [3, 12], "failur": [6, 12, 16], "fak": 6, "fake_migrate_all": 6, "falh": 4, "fall": 12, "fals": [2, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "falt": 6, "famous": 1, "fancy": 16, "far": [14, 16], "fas": 6, "fast": [0, 4, 6, 8, 15, 16], "fat": 6, "fath": 6, "father_id": 6, "favorite_color": 5, "faz": [2, 5, 8, 10, 12, 13], "fb00": 12, "fdb": 6, "fe80": 12, "feasibl": [2, 12], "featur": [0, 4, 6, 7, 8, 15, 17], "february": 5, "fech": [6, 8, 10], "fechament": 10, "feit": 6, "fetch": [6, 15, 16], "fetchon": 6, "few": [8, 13, 16], "fez": [2, 6], "ff00": 12, "fic": 6, "ficheir": 6, "fict\u00edc": 6, "fict\u00edci": 6, "fid": 6, "field": [2, 4, 5, 7, 13, 14, 15, 16, 17], "field1": 6, "field2": 6, "field3": 6, "field_id": 14, "fieldnam": [6, 16], "fields": [5, 7, 12, 13, 14, 15, 17], "fieldstorag": 12, "fifth": 14, "fil": [0, 1, 2, 3, 5, 6, 8, 10, 11, 13, 14, 16, 17], "file_content": [6, 16], "file_nam": [6, 16], "file_path": 15, "fileir": 6, "filenam": [2, 4, 5, 6, 12], "filep": 4, "filepaths": 4, "filesyst": [4, 5, 6], "fileuploadwidget": 12, "fill": [12, 16], "filled": 12, "filt": [2, 4, 7, 12, 14], "filter_in": 12, "filter_out": 14, "filtered": 13, "filters": [4, 12], "filtr": [13, 14], "filtrag": [4, 14], "fim": [1, 2, 5, 6], "fin": [2, 13, 14], "final": [1, 2, 5, 6, 11], "finally": [4, 14], "find": [1, 2, 4, 12, 13, 14], "find_by_tag": 13, "find_match": 11, "findall": 12, "finding": 14, "finds": [6, 16], "fins": 6, "firebird": 6, "firebird_embedded": 6, "firebirdadapt": 6, "firebirdembedded": 6, "firebirdembeddedadapt": 6, "firefox": [3, 16], "firfox": 16, "first": [0, 2, 3, 5, 7, 8, 10, 12, 13, 14, 15, 16], "first_nam": [4, 5, 13, 14], "first_only": 10, "first_row": 6, "first_row_dict": 6, "fist": 12, "fits": 12, "fix": [5, 6], "fixed": [6, 15], "fixtur": [0, 2, 6, 10, 15, 17], "fixur": 17, "fiz": 1, "fk_field": 16, "fk_tabl": 16, "fkdaog": 8, "flag": 12, "flash": [8, 12, 16, 17], "flask": [0, 15], "flexibil": [0, 14], "flexibility": 16, "flexibl": [6, 13], "flex\u00edv": 0, "flex\u00edvel": 6, "flight": 7, "float": [4, 12], "floating": 12, "flow": 13, "flux": 6, "fn": 2, "focus": 16, "fold": [1, 2, 3, 4, 5, 6, 7, 11, 12, 14, 15], "folders": 2, "follow": [2, 4, 7, 13, 14, 15], "followed": [2, 5, 12], "following": [1, 4, 5, 6, 8, 10, 12, 13, 14, 15, 16], "follows": [5, 6, 12], "font": [6, 8, 12, 14], "foo": 14, "foot": 8, "footers": 8, "footing": 13, "forbid": 12, "forbidden": 12, "forc": [2, 6, 7, 12, 13], "forcing": 12, "foreground": 12, "foreign": 14, "foreign_key_checks": 6, "forgery": 5, "forget": 14, "form": [0, 4, 5, 6, 7, 11, 13, 14, 17], "form_basic": 12, "form_custom_widgets": 12, "form_exampl": 12, "form_minimal": 12, "form_nam": 12, "form_widgets": 12, "format": [4, 5, 7, 10, 11, 13, 14], "formats": 12, "formatt": 16, "forma\u00e7\u00e3": 6, "formdat": 7, "forms": [6, 10, 14, 15, 16], "formstyl": [12, 14, 16], "formstylebootstrap4": 12, "formstylebulm": [12, 14, 16], "formstyledefault": [12, 14], "formstylefactory": 16, "formul\u00e1ri": [6, 13, 14, 17], "fornec": [0, 2, 3, 4, 5, 6, 10, 13, 14], "forum": 3, "foruml\u00e1ri": [6, 10, 17], "forward": 1, "found": [2, 6, 12], "four": [2, 6], "fourth": 12, "fp": 5, "fr": 11, "fracass": 6, "framework": [0, 2, 12, 13, 14, 15, 16], "frameworks": [0, 2, 5, 15, 16], "fras": 6, "fre": [1, 5, 13], "freetext": 16, "frent": 8, "frequently": 12, "frequ\u00eanc": 1, "friendly": [0, 5, 8], "from": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13, 14, 15, 16], "from_address": 13, "front": [12, 16], "frontends": 16, "fronts": 0, "fsstorag": 5, "ftps": 12, "fug": [6, 8], "full": [2, 4, 6, 8, 12, 16], "fullnam": 6, "fully": [4, 5, 6, 12], "func": [2, 5], "funcion": [6, 17], "funcional": [0, 5, 6], "function": [2, 4, 5, 6, 7, 8, 10, 12, 14, 15, 16], "functional": 16, "functionaliti": 2, "functionality": [0, 8, 15], "functions": [2, 5, 10, 16], "functools": 16, "fund": 4, "fun\u00e7\u00e3": [4, 6, 8, 10], "fun\u00e7\u00f5": [4, 8], "futur": [5, 15, 16], "f\u00e1bric": 6, "f\u00e1cil": [0, 6, 8, 10, 13], "f\u00edsic": 13, "g": [1, 2, 6, 10, 12], "gain": 2, "gananc": 4, "garant": [6, 8], "garraf": 4, "gavgavian": 1, "gend": 6, "general": [5, 6, 12, 13], "generaliz": 6, "generally": [2, 5, 8], "generat": [2, 6, 8, 10, 12, 13, 14, 15, 16], "generated": [1, 5, 6, 8, 12, 14, 16], "generation": 1, "generator": 10, "generic": [2, 4, 5, 6, 12], "generically": 6, "genindex": 17, "gen\u00e9r": 6, "ger": [6, 8, 10, 13, 14], "gerador": 6, "geral": [0, 2, 6, 7, 10], "german": 11, "gest\u00e3": [0, 1], "get": [1, 2, 4, 5, 6, 8, 12, 13, 14, 15, 16, 17], "get_cooki": 16, "get_us": [4, 5, 13, 15], "get_vars": [7, 15], "gets": [8, 13], "getvalu": 6, "gevent": [1, 2], "geventwebsocketserv": 2, "geventws": 2, "gia": 5, "gib": 6, "gif": 12, "git": [1, 2], "github": [2, 3, 4, 6, 14], "gitlat": 1, "giv": [4, 5, 6, 8, 13], "given": [2, 5, 6, 8, 12, 16], "giving": 5, "global": [0, 6, 15, 16], "globally": [2, 6], "globals": [5, 6, 8, 13, 15], "go": [2, 4, 14], "goes": [6, 12], "going": [4, 16], "good": [3, 12], "googl": [0, 3, 5, 8, 12, 14], "googledatastor": 6, "googledatastoreadapt": 6, "googlemysql": 6, "googlepostgr": 6, "googlesql": 6, "googlesqladapt": 6, "gost": 6, "got": 6, "gotch": 6, "gott": 8, "grac": 6, "grad": 0, "grand": 6, "granul": 6, "granulary": 12, "graphql": 7, "grau": 6, "grav": 6, "grava\u00e7\u00f5": 12, "gravidad": 6, "grav\u00e1vel": 6, "great": 16, "green": [4, 6, 12, 15], "grelh": 14, "grid": [0, 17], "grid_class_styl": 14, "grid_tutorial": 14, "gridactionbutton": 14, "gridclassstyl": 14, "gridclassstylebulm": 14, "grids": 14, "group": [1, 3, 5, 13, 15], "group_nam": [5, 13], "groupby": 12, "grouping": 2, "groups": [0, 1, 3, 5, 13, 15], "growing": [0, 16], "grup": [6, 13], "gt": [7, 10], "guarant": 5, "guaranteed": [6, 15, 16], "gui": 3, "guid": 2, "guidelin": 13, "gunicorn": 2, "gunicorngevent": 2, "gz": 12, "h": [2, 12], "h1": [4, 8], "h2": [8, 12], "habilit": 6, "had": 6, "hamburg": 8, "hand": [2, 16], "handl": [2, 4, 5, 6, 15, 16], "handled": [4, 5, 12, 16], "handlers": 4, "handling": 14, "handy": 6, "hanging": 1, "happen": 5, "happens": 6, "hard": 15, "hardcod": 5, "harmoniz": 4, "has": [0, 2, 4, 5, 6, 8, 12, 13, 14, 15, 16], "has_membership": 13, "hash": [2, 6, 12], "hashed": 12, "hav": [0, 1, 2, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "head": [4, 5, 6, 8, 14, 16], "headers": [4, 8, 16], "heading": 12, "headings": [10, 14], "height": [12, 14, 16], "hell": [4, 5, 6, 8, 10, 12, 13, 16], "help": [1, 2, 5, 6, 7, 8, 10, 12, 14, 15], "helpers": [4, 6, 8, 12, 14, 15, 17], "helps": [6, 8, 12], "henc": [0, 2, 5, 6, 12], "her": [0, 1, 2, 4, 5, 6, 7, 8, 10, 12, 13, 14, 16], "herd": 6, "her\u00f3": 7, "hesitat": 6, "hex": 12, "hh": 12, "hi": 16, "hid": 14, "hidden": [12, 16], "hidden_div": 16, "hidden_input": 16, "hierarchical": 13, "high": [12, 13], "highest": 12, "highlighting": [1, 8], "highly": [1, 14], "hints": 14, "his": 12, "historical": 0, "history": 12, "hist\u00f3r": [5, 6], "hmac": 12, "ho": 5, "hold": 16, "holds": 6, "hom": 8, "hom\u00f3log": 4, "hor": 6, "hosped": 1, "host": [2, 5, 12, 13], "hosted": 1, "hour": 12, "hous": 15, "housekeeping": 6, "houv": 6, "how": [0, 2, 4, 5, 6, 7, 8, 12, 13, 14, 15, 16], "howev": [6, 8, 12, 16], "href": [8, 10, 13, 14], "hs256": 5, "html": [1, 2, 4, 5, 7, 8, 11, 12, 13, 14, 15, 16], "html5": 8, "htmx": [14, 17], "htmx_form": 16, "htmx_form_dem": 16, "htmx_grid": 16, "htmx_list": 16, "htmxautocompletewidget": 16, "http": [0, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13, 14, 15], "https": [1, 3, 4, 5, 7, 8, 12, 13, 14, 16], "httrespons": 5, "hulk": 12, "hundrands": 16, "hx": 16, "hypertext": 16, "hyphen": 10, "h\u00e1bit": 2, "h\u00edfens": 10, "i": [4, 5, 6, 7, 8, 12, 13, 16], "i18n": 11, "ibm_db_dbi": 6, "icon": [8, 14], "icons": 14, "id": [2, 5, 7, 8, 10, 12, 13, 14, 15, 16], "id1": 6, "id2": 6, "id_field_nam": 14, "id_valu": 14, "ide": [0, 1, 2, 3, 6], "ident": 7, "identical": 15, "identifi": 6, "identific": [6, 10], "identify": 4, "identifying": [5, 12], "identity": [6, 7, 15], "ides": 15, "idiom": 11, "idn": 12, "ids": 6, "ie": 12, "ietf": 12, "if": [0, 1, 2, 3, 4, 5, 6, 7, 10, 12, 13, 14, 15, 16], "ifram": 12, "ignor": [5, 6, 8, 12, 14], "ignore_attribute_plugin": 14, "ignore_common_filters": [6, 12], "ignore_field_cas": 6, "ignored": [4, 8, 10, 14, 16], "igual": [6, 7], "iip": 6, "illustrat": 6, "ilustr": [6, 8], "imag": [6, 8, 10, 12], "image_fil": 6, "imagin": [5, 6, 8, 16], "imaging": 12, "imap": 6, "imapadapt": 6, "imaplib": 6, "imediat": 14, "img": [4, 12], "immediat": 2, "immediately": 6, "immensely": 0, "imped": [6, 10], "impersonat": 13, "impersonating": 13, "implement": [5, 6, 8, 13], "implementation": [4, 8, 12, 15], "implementations": 16, "implemented": 6, "implements": [5, 6], "impli": 7, "implications": 5, "implicit": 6, "implicitly": 12, "impl\u00edcit": 6, "impor": 6, "import": [0, 1, 2, 4, 5, 7, 8, 10, 11, 12, 13, 14, 15, 16, 17], "import_and_sync": 6, "import_from_csv_fil": 6, "important": [0, 2, 4, 5, 6, 12, 13], "imported": [2, 12, 13, 15], "importing": 6, "impos": 8, "impot": 12, "imprim": 6, "improved": 12, "improvement": 14, "improving": [12, 13], "in": [0, 1, 2, 3, 4, 6, 7, 11, 12, 13, 14, 15, 17], "inalter": 6, "inclu": [0, 4, 6, 8, 10, 14], "includ": [4, 6, 7, 10, 14, 16], "include_action_button_text": 14, "include_paths": 4, "included": [6, 8, 12, 14], "including": [5, 12, 14, 15, 16], "inclusion": 0, "inclusiv": [0, 12], "inclus\u00e3": 10, "inclu\u00edd": [6, 10], "incoming": 2, "incomum": 6, "incorpor": 6, "incorret": 8, "increased": 5, "increment": 6, "indeed": [0, 5], "indent": 8, "indentation": 8, "indented": 8, "independent": [0, 5, 6, 13], "indesej": [2, 6], "index": [1, 2, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "indic": [4, 6], "indicat": [12, 15], "indicator": 16, "individu": [0, 2, 5, 6], "individual": [5, 6, 7, 8, 12], "indo": 6, "inefficient": 5, "ineficient": 6, "infinit": 6, "info": [2, 4, 5, 13], "inform": [1, 4, 5, 6, 12], "information": [5, 6, 7, 12, 13, 15, 17], "informed": 6, "informix": 6, "informixadapt": 6, "informixdb": 6, "informixs": 6, "ingredient": 4, "ingres": 6, "ingresadapt": 6, "ingresdb": 6, "ingresu": 6, "ingresunicod": 6, "ingresunicodeadapt": 6, "inic": [2, 4], "inicializ": [4, 5], "init": [4, 14], "initial": [8, 12], "initializ": 2, "initialized": 0, "inject": [12, 17], "injected": [5, 8, 10, 12], "injecting": 10, "injection": 6, "injections": 10, "inje\u00e7\u00e3": 6, "inlin": 16, "inner": [5, 16], "input": [2, 5, 6, 8, 12, 16], "inputs": [12, 16], "insegur": 10, "insensitiv": 12, "inser": [3, 8], "insert": [5, 7, 8, 12, 13, 14, 16], "inserted": 8, "inserting": 12, "inserts": 12, "inser\u00e7\u00f5": 6, "insid": [1, 2, 4, 5, 6, 8, 10, 12, 14, 15, 16], "insir": 6, "insist": 10, "inspector": 8, "inspired": 7, "instal": [3, 6, 13, 17], "install": [2, 6, 13, 16], "installation": 2, "installations": 17, "installed": [0, 1, 2, 3, 4, 5, 6], "installs": 2, "instanc": [6, 10, 12, 14, 16], "instanci": 6, "instantiat": [6, 13, 15], "instantiated": 6, "instantiation": [13, 14], "instead": [1, 4, 5, 6, 8, 10, 12, 13, 14, 15, 16], "instructions": [2, 12], "instru\u00e7\u00e3": 6, "instru\u00e7\u00f5": 6, "inst\u00e2nc": [6, 14], "int": [4, 6, 12, 13, 15], "int2ip": 6, "integ": [2, 6, 7, 10, 12, 16], "integers": 12, "integr": 0, "integrated": 1, "integration": 16, "integrity": [8, 16], "inteir": [4, 6], "intended": [6, 16], "intentionally": 12, "interaction": 5, "interag": 0, "interchangeably": 13, "interfac": [0, 3, 5, 6, 14, 15, 16], "interior": 8, "intermedi\u00e1r": 6, "intern": [5, 6], "internacionaliz": [0, 4, 17], "internal": [0, 1, 8, 13], "internally": [4, 5, 6, 14], "internationaliz": 12, "internationalization": [5, 12, 15], "internationalized": 12, "interpret": [0, 6], "interpreted": 10, "interpreting": 7, "interromp": 6, "intersec\u00e7\u00e3": 6, "into": [0, 2, 4, 5, 6, 8, 10, 12, 15, 16], "introdu": 2, "introduc": 0, "introduction": [1, 17], "introduz": 8, "intuitively": 12, "invalid": [2, 6, 12], "invalidated": 5, "invalidating": 12, "invers": 6, "invert": [6, 12], "invisibl": 6, "involv": [6, 14, 15], "involved": [6, 8], "inv\u00e9s": 6, "in\u00edci": 6, "in\u00fatil": 6, "io": [2, 6], "ip": [6, 12], "ip2int": 6, "ip_list": 13, "ipaddr": 6, "ipaddress": 13, "iptabl": 2, "ipv4": [6, 12], "ipv4address": 13, "ipv4network": 13, "ipv6": 12, "irem": [4, 5], "ir\u00e1": [2, 3, 4, 6, 8, 13, 14], "is": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "is_6to4": 12, "is_activ": 6, "is_automatic": 12, "is_dat": 6, "is_datetim": 6, "is_decimal_in_rang": 6, "is_empty_or": 6, "is_float_in_rang": 6, "is_impersonating": 13, "is_in_db": [6, 14], "is_in_set": 6, "is_int_in_rang": 6, "is_json": 6, "is_length": 6, "is_link_local": 12, "is_localhost": 12, "is_multicast": 12, "is_not_empty": 6, "is_null_or": 14, "is_privat": 12, "is_public": 6, "is_reserved": 12, "is_routeabl": 12, "is_tered": 12, "is_tim": 6, "isdir": [7, 14], "isn": [12, 14], "iso": 7, "isolation": 16, "issu": [0, 6], "it": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13, 14, 15, 16], "italian": [5, 11], "item": [6, 8, 10], "itemize1": 8, "itemize2": 8, "items": [6, 7, 8, 12], "itens": 6, "iter": 8, "iterabl": [6, 12], "iterations": 12, "iterators": 6, "iterselect": 6, "its": [0, 1, 2, 3, 4, 5, 6, 8, 10, 12, 13, 14, 15, 16], "itself": [2, 6, 12, 16], "it\u00e1l": 10, "iv": 6, "janel": 2, "javascript": [1, 4, 7, 10, 16], "jdbc": 6, "jdbcpostgr": 6, "jdbcpostgresqladapt": 6, "jdbcsqlit": 6, "jdbcsqliteadapt": 6, "jetbrains": 1, "jim": [0, 1, 14], "jinja2": 5, "job": [7, 12, 14], "jog": [6, 11], "john": [0, 6], "join": [4, 5, 7, 12, 14, 15], "joined": 14, "joins": [14, 17], "jonathan": 6, "jorn": 1, "journalist": [7, 14], "jpeg": 12, "jpg": 12, "jpsteil": 14, "jquery": [10, 12, 16], "js": [0, 4, 5, 8, 11, 15, 17], "jsl": 16, "json": [0, 1, 2, 4, 5, 6, 7, 11, 12, 15, 16], "junt": [10, 14], "jun\u00e7\u00e3": [6, 13], "jun\u00e7\u00f5": 6, "just": [1, 2, 4, 5, 6, 7, 8, 12, 14, 16], "jwt": 5, "jython": 6, "k": [5, 8, 15], "kargs": 10, "kbd": 2, "kbytes": 5, "keep": [1, 2, 4, 5, 6, 7, 8, 10, 12, 15], "keep_valu": 12, "keeps": [5, 14], "kell": 0, "ken": 6, "kent": [7, 14], "kevin": 0, "key": [2, 4, 5, 6, 7, 10, 12, 13, 17], "keycod": 16, "keyed": 6, "keys": [6, 7], "keyup": 16, "keyword": [6, 8, 10], "keywords": 6, "kfield": 16, "killed": 16, "kind": 4, "kindness": 0, "kinterbasdb": 6, "know": [5, 14], "known": [6, 8], "known_expressions": 11, "knows": 5, "ktabl": 16, "kwargs": [6, 16], "ky8iq0g4b3cyey6wyhn3yt9pw0xpsrivlkmxe40ptknxrlnz9": 8, "l": [2, 12], "la": [4, 6], "label": [6, 7, 8, 12, 16], "labeling": 15, "labels": 12, "lac": 6, "lacking": 12, "lacks": 15, "lad": [1, 5, 6], "lambd": [5, 6, 10, 12, 14, 16], "languag": [1, 4, 5, 8, 11, 15, 16], "larg": [0, 12], "last": [1, 5, 8, 12, 13, 14, 16], "last_insert_id": 6, "last_nam": [5, 13, 14], "last_row": 6, "lastdot": 12, "lastrowid": 6, "lat": [1, 2, 4, 5, 6, 8, 10, 12, 14], "latest": [2, 6, 15], "latin1": 6, "latt": [6, 12, 15], "launch": [1, 2], "lax": 5, "lay": [5, 15, 17], "layers": 5, "layout": [12, 13, 14, 15, 16, 17], "layouts": [8, 14], "lazily": 16, "lazy": [2, 4, 6], "lazy_tabl": 6, "lazy_total_pric": 6, "ldap": [0, 5], "ldap_plugin": 13, "ldap_setting": 13, "ldap_settings": 13, "ldapplugin": 13, "lead": [14, 16], "learn": [1, 6], "least": [1, 2, 12, 15, 16], "leav": [5, 6], "left": [8, 12, 14, 16], "legacy": 6, "leg\u00edvel": 6, "leitur": 6, "lembr": [3, 6, 8, 12], "len": [12, 16], "length": [6, 12], "ler": [1, 6], "less": [7, 12, 15, 16], "let": [7, 12, 16], "lets": 2, "letters": 12, "letting": 6, "lev": [6, 10], "levant": 6, "level": [2, 6, 7, 12, 13], "leverag": 0, "li": [8, 12, 13, 16], "lib": 2, "libldap2": 13, "librari": 13, "library": [2, 6, 11, 12, 15, 16], "libs": [8, 10, 14], "libsasl2": 13, "libsass": 4, "licens": 1, "lid": [1, 4, 5, 6, 14], "lif": 16, "lifespan": 12, "lifetim": 5, "lig": [2, 5, 6, 10], "liga\u00e7\u00e3": [4, 5, 6], "liga\u00e7\u00f5": [6, 10], "light": 15, "lik": [0, 1, 2, 3, 4, 5, 7, 8, 10, 11, 12, 13, 14, 15, 16], "limit": [5, 6, 7, 12, 13], "limitation": 8, "limited": [0, 2, 5, 15, 16], "limiting": 16, "limits": 12, "limp": 1, "lin": [2, 4, 5, 7, 8, 10, 12, 13, 14, 16], "linguag": [0, 4, 5, 17], "linguagens": 4, "linh": [5, 6, 8, 10, 14, 17], "link": [4, 7, 8, 10, 12, 13, 14], "linked": 7, "links": [2, 6, 14, 16], "linting": 1, "linux": 2, "list": [0, 1, 2, 4, 5, 7, 8, 10, 12, 13, 14, 16], "list_of_fields": 6, "listabl": 6, "listagens": 10, "listed": [5, 12, 16], "listening": 3, "listproperty": 6, "lists": [6, 14], "liststringproperty": 6, "listwidget": 12, "littl": [1, 5, 6], "liv": 16, "livr": [1, 6], "lix": 6, "ll": [1, 2, 3, 5, 6, 8, 12, 14, 16], "lo": [1, 2, 3, 4, 6, 7, 8, 10], "load": [3, 5, 16], "loaded": [4, 8, 14, 16], "loading": 16, "loads": [6, 16], "loazkjy": 8, "loc": 5, "local": [3, 5, 8, 12, 13, 14], "localhost": [2, 4, 5, 6, 12], "localiz": 4, "locally": 2, "locals": [5, 12, 15], "locat": 15, "location": [2, 4, 6, 8, 15], "locked": 6, "locking": 5, "locks": 16, "log": [0, 2, 4, 5, 6, 8, 10, 13, 15, 16], "logerrors": 5, "logfil": 6, "logged": [5, 8, 13, 15], "logging": [2, 13], "logging_level": 2, "logic": [2, 5, 6, 13, 15, 16], "logical": 12, "login": [0, 2, 3, 4, 5, 6, 8, 12, 13, 15], "logout": [0, 8, 13], "logs": [2, 5, 6], "loj": 6, "long": [0, 2, 6, 12, 16], "longtext": 6, "look": [5, 6, 7, 12, 13], "looking": 3, "looks": [2, 6, 12], "lookup": [5, 7], "lookups": 12, "loop": [6, 8, 16], "looping": 6, "loops": 16, "los": [2, 4, 6, 12], "lost": [5, 15], "lot": [4, 6], "lots": 1, "loved": 0, "low": [0, 12], "lowercas": 12, "lowest": 12, "lru": 5, "lt": 10, "lts": 2, "luc": [0, 1], "lug": [1, 5, 6], "lumin\u00e1r": 4, "l\u00e1": [2, 4], "l\u00edngu": 1, "m": [0, 2, 6, 10, 12], "mac": [2, 6], "macac": 5, "macneiln": 2, "mad": [8, 12, 14], "magically": 0, "mai": 5, "mail": [2, 3, 5, 12, 13], "mailing": 6, "mailt": 12, "main": [1, 2, 3, 4, 6, 8, 14, 15, 16], "maintain": [6, 8, 16], "maintainability": 6, "maintainabl": 14, "maintenanc": 16, "maior": [6, 7], "mai\u00fascul": 6, "major": 6, "mak": [0, 1, 2, 5, 6, 8, 10, 12, 13, 14, 15, 16], "makefil": 2, "making": [6, 8], "man": 16, "manag": [2, 3, 4, 5, 6, 13, 16], "managed": 0, "management": 12, "managing": 6, "mandatory": [5, 8], "maneir": [5, 6, 14], "manipul": 6, "manipulat": 12, "manipulated": 12, "mann": 15, "manual": [2, 3, 4, 6], "manually": [2, 4, 6, 10, 13, 14], "many": [0, 1, 2, 4, 5, 7, 8, 12, 14, 15, 16], "map": [4, 6, 10, 11], "map_non": 6, "mapping": [2, 6, 12, 15], "maps": [6, 10], "marc": [1, 6, 10, 13], "marca\u00e7\u00e3": 10, "margin": [8, 16], "marked": 6, "massim": [0, 6], "mast": [1, 2, 14], "match": [2, 5, 6, 8, 10, 11, 12], "matched": [4, 7, 10, 12], "matching": [7, 10, 12], "matem\u00e1t": 6, "material": 6, "math": 16, "matriz": 10, "matters": 15, "max": [11, 12, 16], "max_concurrent_runs": 16, "maximum": [5, 12], "maxip": 12, "maxlen": 12, "maxsiz": 12, "may": [2, 4, 5, 6, 8, 10, 12, 15, 16], "md": 1, "md5": 12, "mean": 15, "meaning": [6, 12, 13], "meanings": 12, "means": [1, 2, 3, 5, 6, 8, 12, 13, 15], "mecan": [5, 6, 8], "mechanism": [0, 6, 8, 10, 13, 15], "med": 1, "mediant": 8, "mei": 6, "melhor": [0, 1, 6, 11, 14, 17], "memb": [12, 13], "membership": [0, 5, 12, 13, 15], "memberships": 5, "membr": 13, "memcach": [0, 6], "memoiz": 17, "memory": [5, 6], "men": [1, 2, 5, 6], "menor": 6, "mensag": 14, "mensagens": [5, 6], "ment": 1, "mention": 5, "mentioned": [13, 16], "menu": [8, 12, 13], "menus": [8, 12], "mes": [6, 10], "mescl": 6, "mesm": [0, 1, 2, 4, 5, 8, 10, 11, 14], "messag": [2, 4, 5, 7, 8, 12, 14, 15, 16], "messed": 1, "mestr": 6, "met": [6, 8, 10], "metad": 6, "metadat": 6, "metatag": 10, "method": [4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "methods": [5, 7, 10, 12, 13, 14, 17], "mfa": 13, "micah": 0, "microsoft": [1, 13], "mid": 6, "middlewar": 5, "might": [7, 12], "migr": 6, "migrate_enabled": 6, "migrated": 6, "migrating": [6, 15], "migration": 6, "migrations": 6, "migra\u00e7\u00f5": 17, "min": [8, 12, 14], "min_length": 12, "mind": [4, 6, 7, 8, 12], "mindful": 6, "minimal": [5, 14, 17], "minimalist": [8, 15], "minimalist_pag": 8, "minimum": 12, "minip": 12, "minor": [8, 12, 15], "minsiz": 12, "minut": 12, "min\u00fascul": 6, "missing": [2, 13, 14], "mistak": 2, "mix": 8, "mkdir": [2, 4, 7, 14], "mm": 12, "mobili\u00e1ri": 5, "mod": [2, 4, 5, 6, 12, 13], "model": [0, 3, 7, 10, 12, 15, 16], "models": [4, 6, 7, 14, 15], "modern": [6, 13, 16], "modifi": 14, "modific": [2, 4], "modificaiton": 12, "modifications": 2, "modified": [4, 12, 15], "modified_by": 6, "modified_on": 6, "modifiers": 7, "modify": [12, 14, 16], "modifying": [2, 8], "modindex": 17, "modul": [0, 1, 2, 4, 6, 8, 10, 12, 13, 14, 15], "moment": [2, 6], "mong": 6, "mongodb": 6, "mongodbadapt": 6, "monoespac": 10, "monolithic": 0, "mont": 13, "month": 12, "mor": [0, 2, 4, 5, 6, 7, 8, 10, 12, 14, 15, 16], "moreov": 16, "most": [0, 4, 5, 6, 12, 13, 14, 15, 16], "mostr": [1, 4, 6, 14], "moth": 6, "mother_id": 6, "motor": 6, "mov": 6, "mssql1": 6, "mssql1n": 6, "mssql2": 6, "mssql2adapt": 6, "mssql3": 6, "mssql3adapt": 6, "mssql3n": 6, "mssql4": 6, "mssql4adapt": 6, "mssql4n": 6, "mssqladapt": 6, "mssqln": 6, "mtabl": 0, "much": [0, 1, 5, 6, 8, 12, 14, 15, 16], "mud": [4, 5, 6], "mudanc": 6, "muit": [0, 1, 4, 5], "mult": [1, 2, 6, 15], "multicast": 12, "multipl": [1, 2, 6, 8, 10, 12, 15, 16, 17], "multiprocess": 5, "multiselect": 12, "multius": 13, "must": [1, 2, 3, 4, 5, 6, 8, 10, 12, 13, 15], "my": [5, 8, 10, 12, 13, 16], "my_app": 4, "my_id": 16, "my_password_fil": 2, "my_task": 16, "my_url_path": 15, "my_var": [5, 10], "myapp": [2, 4], "myclass": 10, "mycomponent": 16, "mycustomwidget": 12, "mydb": 6, "myerrors": 5, "myfield": 6, "myfil": 6, "myfixtur": 5, "myfunction": 2, "myidx": 6, "myobj": 6, "myobjnam": 6, "myord": 6, "myquery": 6, "myrecord": 6, "mysaltvalu": 12, "myset": 6, "mysideb": 8, "mysqladapt": 6, "mysqldb": 6, "mysqldv": 6, "mystyle": 12, "mytabl": 6, "myvalu": 6, "myvirtualfields": 6, "myvirtualfields1": 6, "myvirtualfields2": 6, "m\u00e1quin": [6, 10], "m\u00e1x": 6, "m\u00e1xim": 6, "m\u00e9d": 6, "m\u00e9di": 13, "m\u00e9tod": [4, 5, 6, 8, 14], "m\u00ednim": [5, 6], "m\u00f3dul": [0, 2, 5, 6], "m\u00faltipl": [0, 6], "n": [5, 6, 11, 16], "nad": [2, 4, 6], "nam": [2, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "named": 10, "nameonly": 6, "naming": 6, "nasc": 6, "natal": 6, "nativ": 6, "native_json": 12, "nav": 8, "navb": [8, 13], "naveg": 14, "navigat": 16, "navigation": [8, 16], "ndb": 6, "ne6fz": 8, "necess": [1, 2, 4, 5, 6, 8], "necessary": [6, 8, 10], "necessit": 6, "necess\u00e1r": [1, 5, 6], "necess\u00e1ri": [2, 4, 5, 6], "neck": 16, "need": [0, 1, 2, 5, 6, 8, 10, 12, 13, 14, 15, 16], "needed": [2, 4, 5, 6, 10, 12, 13, 16], "needs": [0, 4, 5, 6, 13, 15, 16], "neg": 6, "negated": 6, "negativ": [6, 12], "nega\u00e7\u00e3": 6, "neith": 12, "nel": 6, "nenhum": [6, 13], "ness": 6, "nest": [1, 6, 8, 10], "nested": [6, 8], "nested_select": 6, "network": [12, 13], "networks": [12, 13], "nev": [6, 8, 12, 15, 16], "new": [0, 2, 4, 5, 6, 7, 8, 10, 11, 12, 13, 14, 15, 16], "new_app": [8, 10], "new_password": 16, "new_sidec": 16, "newlin": [6, 12], "newly": 6, "next": [1, 5, 6, 8, 12, 16], "nginx": 2, "nic": [0, 16], "nicozanf": 2, "nid": 6, "niss": 6, "no_backslash_escap": 6, "no_tabl": [12, 16], "nod": [4, 16], "nom": [2, 4, 5, 7, 10, 12, 13, 14], "nomeaplic": 13, "non": [2, 4, 5, 6, 7, 10, 12, 14, 15, 16], "nor": [2, 12], "norm": 6, "normal": [4, 5, 6, 8, 12, 14, 16], "normaliz": 6, "normalized": 6, "normally": [2, 6, 8, 10, 12, 14], "northwind": 1, "nosqladapt": 6, "noss": [1, 4, 5, 6], "not": [0, 1, 2, 4, 5, 7, 8, 10, 12, 13, 14, 15, 16], "not_authorized": 13, "notation": 10, "nota\u00e7\u00e3": [6, 10], "noted": 8, "nothing": [2, 5, 6, 12, 16], "notic": [2, 4, 5, 6, 8, 10, 12, 13, 14, 15, 16], "notnull": 6, "notset": 2, "nov": [0, 1, 2, 3, 4, 14], "novaaplicaca": 4, "now": [0, 4, 5, 6, 12, 14, 16], "nowadays": 1, "nul": 6, "null": [6, 7, 12, 16], "numb": [2, 5, 6, 8, 12], "number_workers": 2, "numbers": 12, "numerical": 12, "num\u00e9r": 6, "nunc": [5, 6], "n\u00e3": [0, 1, 2, 3, 4, 5, 6, 8, 10, 13, 14], "n\u00edvel": [6, 11], "n\u00famer": [4, 6, 11, 14], "oauth": 13, "oauth2": [0, 5], "oauth2discord": 13, "oauth2facebook": 13, "oauth2googl": 13, "obj": [6, 8], "object": [0, 4, 5, 6, 7, 8, 10, 12, 13, 15, 17], "objects": [0, 4, 5, 6, 10, 12, 14, 15, 16], "objet": [0, 5, 6, 8, 10, 11], "obras": 6, "obrigat\u00f3ri": 6, "observ": [4, 6, 8], "obsolet": 6, "obtain": [2, 13, 16], "obtained": 6, "obter": [4, 6], "obtid": [2, 6], "obvi": 6, "obvious": [7, 8, 13], "obviously": 12, "ocasional": 6, "occasionally": 12, "occur": [2, 12, 16], "occurring": 2, "occurs": 12, "ocorr": [4, 6, 8], "ocult": [6, 12], "odd": [6, 8], "of": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "off": [0, 2, 4, 14, 16], "official": [0, 12, 16], "offs": 6, "offset": [6, 7], "oficial": 6, "often": [6, 13, 16], "ok": [10, 15], "old": [2, 5, 12, 15], "older": 12, "olhand": 6, "ol\u00e1": 8, "ombott": [0, 4, 15], "omit": 2, "omitted": 2, "on": [0, 1, 3, 4, 5, 6, 7, 8, 12, 13, 14, 15, 16], "on_delete_action": 6, "on_error": 5, "on_fals": 5, "on_request": 5, "on_success": 5, "once": [1, 2, 5, 6, 12, 13, 16], "onclick": 16, "onde": [2, 6, 7, 8, 12], "ondelet": 6, "one": [0, 2, 4, 5, 6, 7, 8, 12, 13, 14, 16], "ones": [2, 7, 12, 15], "onion": 5, "onkeydown": 16, "onlin": [1, 6], "onload": 16, "only": [1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "onvalidation": 12, "opacity": 16, "opcion": [6, 10], "opcional": [4, 6, 10, 12], "open": [1, 2, 4, 5, 6, 10], "opening": 5, "oper": [0, 3, 11, 17], "operat": 12, "operation": [6, 13], "operationalerror": 12, "operations": [5, 6], "operator": [5, 6, 12], "oposi\u00e7\u00e3": 10, "opost": 6, "opposit": 5, "oprow": 6, "optimized": 6, "option": [2, 3, 5, 6, 12, 13, 16], "optional": [2, 5, 6, 7, 8, 12, 13, 14, 15], "optionally": [0, 2], "options": [2, 6, 7, 10, 13, 15, 16], "opt\u00e1m": 6, "op\u00e7\u00e3": [3, 4, 6, 8, 10], "op\u00e7\u00f5": [6, 17], "or": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "oracl": 6, "oracleadapt": 6, "ordem": 6, "order": [1, 2, 4, 5, 6, 7, 10, 12, 14, 15], "order_it": 6, "orderby": [12, 13, 14, 16], "ordered": 10, "ordereddict": 6, "org": [2, 4, 7, 10, 16], "organiz": 6, "organized": 4, "orig": [2, 11], "origin": 6, "original": [6, 8, 10, 12], "other": [0, 1, 2, 4, 5, 6, 7, 8, 10, 13, 14, 15, 16], "other_pag": [12, 16], "otherfield": 6, "others": [0, 6, 15], "othertabl": 6, "otherwis": [5, 6, 8, 12, 13, 14], "otimiz": 6, "oufil": 6, "our": [0, 1, 2, 5, 6, 10, 12, 16], "out": [0, 1, 2, 5, 8, 12, 16], "outlined": [4, 5], "output": [1, 2, 5, 8, 12, 16], "output_styl": 4, "outr": [1, 2, 4, 5, 10, 11, 13, 14, 17], "outsid": [0, 5, 6, 12, 14, 15, 16], "ov": 6, "over": [8, 14, 16], "overkill": 13, "overrid": [4, 6, 8, 13, 14, 15, 16], "override_cl": 14, "override_styl": 14, "overriding": 16, "overview": 17, "overwritten": [5, 15], "own": [4, 5, 6, 8, 12, 13, 14, 15, 16], "owner": [6, 12], "owner_id": 6, "owner_id1": 6, "owner_id2": 6, "owners": 12, "ownership": 6, "owns": 6, "p": [2, 8, 12], "p10n": 11, "packag": [0, 6, 10], "padded": [8, 15], "padding": 16, "padroniz": 6, "padr\u00e3": [0, 2, 4, 5, 8, 10, 14], "padr\u00f5": [4, 6, 10], "pag": [1, 3, 4, 5, 6, 10, 12, 13, 14, 15, 16, 17], "page_head": 8, "page_left_menu": 8, "page_scripts": 8, "pagin": [6, 14], "pai": 6, "painel": [0, 2, 3], "paint": [4, 12], "painting": 4, "pairs": 10, "palavr": [8, 10, 11], "pam": [0, 5], "pam_plugin": 13, "pamplugin": 13, "papel": 2, "par": [0, 1, 2, 3, 4, 5, 10, 11, 12, 13, 14, 16, 17], "paragraph": [5, 10, 12, 14], "paramet": [1, 2, 4, 5, 6, 13, 14, 16], "parameters": [2, 6], "params": 16, "parec": [5, 6], "parent": [2, 6, 8, 16], "park": [7, 14], "pars": [5, 6, 12, 13], "parsed": 6, "parsemodul": 4, "part": [4, 10, 15], "partial": [4, 6, 15], "particip": 6, "participat": 1, "particul": [0, 1, 6, 12, 14, 15, 16], "particular": 6, "particularly": 6, "parts": 12, "party": [0, 5], "par\u00e1graf": [1, 10], "par\u00e2metr": [5, 14], "par\u00eantes": 6, "pass": [4, 5, 6, 8, 10, 12, 13, 14, 15, 16], "passed": [2, 4, 5, 6, 10, 12, 13, 14, 16], "passing": [5, 6, 10, 12], "passphras": 5, "password": [2, 6, 8, 12, 13, 15, 16], "password_fil": 2, "passwords": 12, "passwordwidget": 12, "past": [2, 4], "path": [2, 4, 5, 6, 7, 11, 12, 14, 15, 16], "path_t": 2, "pattern": 7, "patterns": 7, "paus": 2, "payment": 6, "payroll": 5, "pbkdf2": 12, "pc": 3, "pdf": [1, 12], "pdkdf2": 2, "pec": [5, 6], "ped": [2, 4, 5, 6, 14], "pedac": 8, "peg": 6, "pegadinh": 17, "pel": [1, 4, 5, 6, 8, 10, 11, 13], "pens": 6, "per": [5, 7], "percentual": 6, "perd": [1, 2, 6], "perfect": 0, "perfectly": 14, "perfil": [0, 13], "perform": [5, 6, 12, 13], "performanc": [0, 5, 6, 15], "performing": 6, "performs": 12, "pergunt": 6, "period": 16, "periodic": 16, "permanec": 6, "permission": [5, 13], "permissions": [0, 5, 6, 13, 15], "permiss\u00e3": [5, 6, 13], "permit": [0, 3, 5, 6, 8, 10, 13, 14], "permitted_tags": 10, "persist": 5, "persistent": [6, 13], "person": [6, 7, 12, 14], "personag": 6, "personagens": [4, 6], "personal": 2, "personaliz": [0, 2, 17], "persons": 12, "persons_and_things": 6, "perspectiv": 0, "pertenc": 6, "pertencent": 6, "pesquis": [2, 3, 6, 14], "pesso": 6, "pet": [6, 7, 14], "philip": 6, "phon": 12, "photograph": [7, 14], "physics": 13, "pick": [5, 13], "picked": 4, "picks": 5, "piec": [0, 12], "pierr": 0, "pip": [0, 1, 6], "pirsch": 0, "piscin": [4, 6], "piu": 5, "pixels": 12, "plac": [1, 5, 6, 8, 12, 14, 16], "placehold": [12, 16], "placeholders": 6, "placing": 14, "plan": [1, 16], "plataform": 17, "platform": [0, 1], "play": 16, "playing": 0, "pleas": [5, 6], "plug": 5, "plugin": [5, 12, 13, 14, 16], "plugins": [12, 16], "plural": 11, "pluraliz": [0, 4, 5, 14, 16, 17], "pluralization": 15, "plus": [8, 13, 14], "pm": 12, "png": [10, 12], "pod": [0, 1, 2, 4, 5, 6, 7, 8, 10, 11, 13, 14], "point": [4, 5, 6, 12, 15, 16], "pointing": [2, 3, 8], "points": [6, 7, 12, 14], "polic": 17, "policy": 7, "pollut": 5, "pol\u00edt": 0, "pont": 6, "pool": 5, "pool_connection": 6, "pool_siz": [5, 6], "pooling": 6, "poor": 16, "pop": 16, "popul": [0, 6], "porqu": [2, 4, 5, 6, 8, 11], "port": [0, 2, 3, 5, 6, 15], "portability": 6, "portabl": 6, "portant": [2, 4, 5, 6, 10], "ports": 2, "por\u00e7\u00f5": 14, "posicion": 10, "position": 5, "positional": 10, "posi\u00e7\u00e3": [5, 10], "possibil": 6, "possibl": [4, 5, 6, 8, 12, 14, 15, 16], "possibly": 6, "poss\u00edv": 6, "poss\u00edvel": [4, 6], "post": [4, 6, 7, 10, 12, 13, 14, 15, 16], "post_action_buttons": 14, "post_text": 6, "post_vars": [7, 15], "post_writabl": 7, "posted": 7, "postel": 11, "posterior": 5, "postfix": 15, "postgr": 6, "postgreboolean": 6, "postgrenew": 6, "postgrepsyc": 6, "postgrepsycoboolean": 6, "postgrepsyconew": 6, "postgres2": 6, "postgres3": 6, "postgres_nonreserved": 6, "postgresql": [2, 6], "postgresqladapt": 6, "postprocessing": 15, "posts": 6, "potentially": 2, "pouc": [5, 6], "pow": [2, 6, 16], "powerful": [7, 13, 15], "powers": 7, "pprint": 6, "pr": 1, "practic": [8, 12], "practical": [6, 12, 15, 17], "pre": [2, 4, 5, 14], "pre_action_buttons": 14, "precau\u00e7\u00e3": 2, "preced": [5, 6, 8], "preceded": [6, 12], "precedent": 6, "preceding": 7, "precious": 14, "precis": [1, 2, 4, 5, 6, 14], "predefin": 8, "predefined": [12, 16], "predetermined": 15, "preench": 6, "preenchiment": 6, "pref": [2, 16], "prefer": 10, "preferenc": 5, "preferred": [5, 6], "prefix": [2, 4, 6, 7, 8, 12, 15], "preguic": 15, "prelimin": 1, "preocup": 6, "prepend": [12, 16], "prepend_schem": 12, "prepended": [12, 15], "prepending": 12, "prepends": 4, "preprocessing": 15, "prerequisit": [2, 5], "presenc": [5, 6], "present": [2, 6, 8, 12, 13], "preserv": [0, 5], "preserved": 5, "press": [4, 14], "pression": 3, "prest": 10, "pretend": 6, "pretty": [6, 15], "prevent": [6, 10, 12, 16], "prevented": 6, "preventing": 5, "prevents": [2, 5, 16], "previ": [6, 12], "previous": [5, 8, 10, 12, 16], "previously": [5, 6, 12], "prim": [5, 12], "primarily": 14, "primary": [6, 8, 13], "primeir": [6, 8, 13, 17], "princip": 0, "principal": [1, 5, 6, 17], "princ\u00edpi": [6, 17], "print": [4, 6, 10, 11, 13, 15, 16], "printed": 4, "privat": [5, 12], "probability": 12, "probl": [0, 6, 8, 14], "problem": [1, 6], "problems": [6, 13, 16], "proc": [13, 16], "proced": 17, "procedur": 2, "process": [2, 4, 5, 6, 8, 10, 12, 13, 14, 15, 16], "processed": [5, 6, 8, 12], "processing": [5, 6, 8, 12, 16], "procur": [1, 6], "produc": [6, 10, 12, 13], "product": [6, 16], "product_record": 16, "production": [2, 4], "products": 6, "produz": [2, 5, 6, 8, 10], "produ\u00e7\u00e3": 0, "professor": 13, "profil": [8, 13, 15], "progr": [1, 2, 3, 10], "program": [1, 3, 6, 8], "programmatically": 10, "programming": [1, 6, 8, 16], "programs": [1, 2, 12], "project": [0, 2, 4, 5, 6], "project_nam": 2, "projet": [0, 2], "prompt": [2, 4, 6], "pront": 6, "prop": [5, 6, 14], "properly": 4, "properti": [6, 12], "propriedad": 6, "propriet\u00e1r": 6, "propriet\u00e1ri": 6, "protocol": 3, "prototyp": 16, "provavel": [4, 5, 6], "proveit": 6, "provid": [0, 4, 5, 6, 8, 10, 12, 13, 14, 15, 16], "provided": [5, 6, 8, 10, 12, 14], "providing": [0, 14, 15], "provoc": 6, "prudent": 6, "pr\u00e1tic": [0, 6, 7], "pr\u00e9": [10, 14, 17], "pr\u00f3pr": [13, 14], "pr\u00f3pri": [6, 14], "pr\u00f3xim": [2, 6], "pseud": 6, "psycopg2": 6, "public": 4, "pud": 2, "pull": 1, "punycod": 12, "pur": 6, "purpos": [0, 6, 10, 12, 13, 15], "put": [5, 7, 12, 16], "put_writabl": 7, "putting": 4, "pux": 6, "pwd": 6, "py": [1, 2, 4, 5, 6, 7, 10, 11, 12, 13, 14, 15, 16], "py4web": [2, 3, 4, 5, 7, 8, 10, 12, 13, 14], "py4web_filesyst": 6, "py4web_wsg": 2, "pyc": 8, "pydal": [0, 2, 3, 5, 6, 7, 12, 13, 14, 15, 16], "pyfilesyst": 6, "pyinstall": 2, "pymong": 6, "pymysql": 6, "pyodbc": 6, "pypi": 2, "pypyodbc": 6, "pysqlite2": 6, "pytds": 6, "python": [0, 2, 4, 5, 6, 8, 10, 11, 12, 13, 14, 15, 16], "python2": [2, 15], "python3": [1, 2], "pyweb": 15, "p\u00e1gin": [8, 10, 14, 17], "p\u00f3s": 14, "p\u00fablic": 6, "q": [2, 6, 14], "qua": [0, 6], "quadr": [0, 1, 6], "quaisqu": [6, 12], "qualified": 6, "qualqu": [1, 2, 4, 5, 6, 7, 8, 13], "quand": [1, 4, 6, 8, 14], "quant": 6, "quantity": 6, "quebr": 0, "qued": 14, "queir": 5, "quer": [2, 4, 5, 6, 10], "queri": [6, 7, 14, 15, 16], "queried": 7, "query": [4, 5, 7, 10, 12, 14, 15, 16], "query1": 6, "query2": 6, "queryselector": 16, "queryselectorall": 16, "querystring": 14, "questions": [1, 2], "quest\u00e3": 6, "quick": [1, 12], "quickly": [2, 12, 14], "quiet": 2, "quirk": 5, "quis": [4, 6], "quit": [1, 2, 5, 7, 8, 12, 14], "quot": [2, 10], "quote_minimal": 6, "quote_nonnumeric": 6, "quotech": 6, "r": [2, 6, 12], "rac": 12, "radi": [10, 12], "radiowidget": 12, "radius": 16, "rais": [5, 12, 13, 15], "raised": 5, "ram": [5, 6], "randint": [8, 13], "random": [6, 8, 12, 13, 16], "rang": [4, 6, 8, 13, 15], "rapid": [0, 16], "rar": 6, "rarely": 6, "rath": [6, 8, 12, 16], "raw": 17, "raz\u00f5": 6, "rb": 6, "re": [0, 1, 2, 4, 5, 6, 8, 10, 12, 13, 14, 15, 16], "rea": 6, "reach": 2, "react": 16, "reactivity": 16, "read": [1, 4, 5, 6, 7, 14, 16], "readability": 7, "readabl": [5, 6, 14, 15], "readm": [1, 12], "readonly": [2, 12, 16], "ready": 2, "reagrup": 0, "real": [2, 4, 7, 8, 12], "real_identity": [6, 7], "realiz": [3, 4, 5, 6], "really": [1, 4], "realment": 6, "reaping": 16, "reason": [2, 5, 6, 14, 15], "reasons": 7, "rebuilt": 6, "rec_id": 7, "receb": [6, 8], "recent": [2, 3, 6, 12, 14], "recently": 5, "recereived": 16, "recip": 2, "reclam": 6, "recogniz": 4, "recognized": 6, "recolh": [7, 14], "recomec": 6, "recomend": 6, "recommand": 16, "recommend": [1, 5], "recommended": [6, 12], "reconstru": 6, "record": [7, 12, 13, 15, 16], "record_id": [7, 16], "recorded": 12, "records": [6, 7, 12, 13, 14, 16], "recorrent": 6, "recovered": 12, "recup": 6, "recuper": [4, 6], "recurs": [2, 8, 17], "recursively": 8, "recycl": 6, "rec\u00e9m": [4, 6, 11], "red": [0, 3, 4, 6, 8, 10, 12, 17], "redefini\u00e7\u00e3": 6, "redesign": 0, "redirecion": [4, 13, 14], "redirect": [4, 5, 12, 13, 14, 16], "redirected": [5, 16], "redirection": [5, 12, 15], "redirects": [5, 13], "reduc": [0, 16], "reduced": 0, "redundant": 6, "reduz": 5, "reescrev": 6, "reescrit": 6, "ref": [3, 5, 6, 10, 12, 17], "refer": [6, 7], "referenc": [1, 5, 6, 7, 8, 10, 12, 14, 16], "referenced": [6, 7], "referenced_by": 7, "referencing": 6, "referim": 6, "referred": [6, 7], "refers": 7, "reflected": 1, "reflet": 6, "reforc": 6, "refresh": 14, "regex": [7, 10, 12], "regexlib": 12, "regist": [0, 5, 6, 8, 13, 14, 15, 16], "register_plugin": 13, "register_task": 16, "register_vue_component": 16, "registered": [5, 13], "registers": 5, "registr": [3, 4, 12, 13, 14], "registration": [4, 12], "registration_stamp": 12, "regr": [4, 5], "regul": [0, 2, 4, 6, 7, 8, 11, 12, 14, 15, 16], "reimplementation": 16, "reinic": 6, "reinstal": 2, "reinstall": 2, "reinstat": 6, "rejected": 12, "rejects": 12, "rel": [8, 14], "relacion": 6, "relat": 6, "related": [5, 6], "relational": 6, "relations": 17, "relationships": 6, "relativ": [4, 15], "rela\u00e7\u00e3": 10, "rela\u00e7\u00f5": 6, "releas": 2, "released": 0, "relev": 6, "reload": [2, 3, 4, 5, 12], "reloaded": [3, 4, 16], "reloading": [2, 4, 5], "reloads": [4, 5], "rely": [0, 4, 6], "rem": 5, "remain": [6, 12], "remains": 0, "rememb": [5, 6], "remembered": 5, "remote_addr": [5, 13], "remov": [2, 4, 6, 10, 12, 13], "removal": 12, "removed": [0, 6, 10, 12], "removing": 6, "remo\u00e7\u00e3": 6, "renam": 1, "rend": [5, 6, 12, 14, 15, 16], "rendered": [5, 7, 8, 12, 14, 15, 16], "rendering": [8, 10], "renderiz": 10, "renders": 12, "reno": 8, "renom": 7, "reopening": 5, "repackaging": 0, "repeated": 12, "repeti\u00e7\u00e3": 6, "replac": [6, 8, 10, 14, 16], "replaced": [8, 10, 12, 16], "replacing": 12, "replicat": [1, 5], "report": 8, "reported": 4, "repository": [1, 2, 3], "reposit\u00f3ri": 2, "repr_row": 6, "represent": [8, 10, 12], "representation": [6, 10], "representational_state_transf": 7, "represented": 12, "representing_field": 12, "represents": [0, 6], "requ": [0, 5, 6, 12, 13, 14, 15, 16], "request": [0, 1, 2, 5, 6, 7, 12, 13, 14, 15, 16], "request_reset_password": 13, "requests": [1, 4, 5, 15], "requir": [2, 5, 6, 12, 13], "required": [4, 5, 6, 7, 12, 16], "requirement": 12, "requirements": [0, 2, 12], "requires_": 15, "requires_login": 15, "requires_membership": 5, "requiring": [2, 15], "requisit": [6, 17], "res": 16, "reserv": 11, "reserved": [6, 12], "reset": 6, "reset_password": 13, "resgat": 6, "resourc": [6, 13], "respect": [6, 12, 14], "respectively": [6, 12], "respons": [4, 5, 6, 8, 15, 16, 17], "responsibility": 6, "responsibl": [14, 16], "respost": [5, 8], "ressalv": 6, "restabelec": 6, "restap": [0, 3, 17], "restart": [2, 4, 5, 6, 14], "restaur": 6, "restful": [7, 13], "restrict": [5, 7, 12, 16], "restri\u00e7\u00e3": 6, "restri\u00e7\u00f5": [0, 6], "restructuredtext": 1, "result": [1, 4, 6, 7, 8, 12, 14, 16], "resulting": [8, 12, 16], "results": [6, 8, 12, 14], "ret": 6, "retain": 6, "retorn": [5, 8, 10], "retribu": 10, "retriev": [5, 6, 16], "retrieval": 6, "retrieved": 15, "return": [4, 5, 6, 7, 10, 12, 13, 14, 16], "returned": [5, 6, 7, 8, 10, 12, 16], "returning": 5, "returns": [5, 6, 7, 10, 12, 13, 15, 16], "reutiliz": [2, 6], "revers": [5, 6], "revers\u00e3": 4, "revert": 6, "rfc": 12, "rid": 6, "riding": 8, "right": [5, 6, 8], "rights": 2, "road": 16, "robust": 16, "rocket": 15, "rocket3": [2, 15], "rocketserv": 2, "rodap": 10, "rol": [5, 10], "roll": 6, "rollback": 16, "rolls": 5, "root": [6, 8, 13, 14], "rosc": 5, "rot": [3, 14], "rotul": 6, "rout": [2, 5, 14, 15, 16], "routing": [0, 2, 4, 15], "rov": 6, "row": [12, 14, 16], "rows": [10, 12, 14, 15], "rows1": 6, "rows2": 6, "rows3": 6, "rows_list": 6, "rows_per_pag": 14, "rpc": 6, "rst": 1, "rul": [8, 12, 14], "run": [1, 3, 4, 6, 8, 13, 16], "run_in_transaction": 6, "running": [1, 2, 5, 16], "runs": [2, 4, 13, 15, 16], "r\u00e1di": 10, "r\u00e1p": [0, 6], "r\u00f3tul": [6, 10, 14], "s": [0, 1, 2, 4, 5, 7, 8, 10, 11, 12, 13, 14, 16], "s3": 6, "s_": [12, 16], "s_autocomplet": 16, "s_autocomplete_results": 16, "s_down_key": 16, "s_search": 16, "sab": [1, 2, 6, 8], "saf": [1, 6, 12, 14, 15], "safar": 16, "safely": [1, 14], "safety": 16, "said": 7, "sair": 13, "sak": 6, "salt": [1, 12], "salv": [4, 6, 11], "sam": [0, 2, 5, 6, 7, 8, 12, 13, 15, 16], "same_sit": 5, "saml": 13, "saml2": 0, "sampl": 13, "san": 4, "sandbox": 16, "sanitiz": [5, 10, 12, 15], "sanitized": 12, "sant": 1, "sap": 6, "sapdb": 6, "sapdbadapt": 6, "sass": 4, "sass_compil": 4, "sav": [1, 5, 6, 11, 12], "saved": [2, 5, 6, 12], "say": 13, "sa\u00edd": [2, 4, 6, 8, 10], "scaffold": [2, 4, 16], "scaffold_zip": 2, "scaffolding": [2, 4, 5, 6, 8, 12, 15, 16], "scal": [5, 8], "scan": 6, "schaf": 1, "schdul": 16, "schedul": 17, "scheduled": 16, "scheduled_for": 16, "schem": [6, 12], "school": 13, "scor": 16, "score_input": 16, "scratch": 4, "script": [2, 5, 8, 12, 16], "scripting": 10, "scripts": [2, 8, 10], "sdk": 2, "seamlessly": 8, "search": [0, 6, 12, 13, 14, 17], "search_button_text": 14, "search_form": 14, "search_queri": 14, "search_text": 14, "search_valu": 16, "searchabl": 6, "searched": [10, 14], "searching": [6, 10], "second": [6, 10, 12, 13, 15], "seconds": [5, 12], "secret": [5, 13], "secs": 16, "section": [2, 4, 6, 8, 12, 13], "sections": 6, "secur": [0, 12], "securely": 2, "security": [0, 7, 13], "see": [0, 1, 3, 4, 5, 6, 8, 10, 12, 13, 14, 16], "seem": 6, "seen": [0, 5, 7, 10, 12, 14, 16], "seg": 4, "segment": 4, "segred": 13, "segu": [2, 4, 5, 6, 8], "seguint": [2, 4, 5, 6, 8, 10, 11, 12, 13, 14], "segund": 6, "segur": [0, 5], "seguranc": [2, 5, 6, 10], "seis": 6, "sej": [4, 6], "seleccion": 6, "selecion": [3, 6], "select": [4, 7, 11, 12, 13, 14, 15, 16, 17], "selected": [3, 4, 7, 10, 12, 16], "selected_elements": 16, "selectedindex": 16, "selecting": 6, "selection": 12, "selections": 12, "selector": [10, 16], "selector1": 10, "selector2": 10, "selectorn": 10, "selectwidget": 12, "selec\u00e7\u00e3": 6, "sele\u00e7\u00e3": [6, 10], "self": [2, 5, 6, 10, 12, 14, 16], "semantic": [12, 13], "semelh": [0, 4, 5, 6, 10], "sempr": [6, 8], "send": [2, 6, 12, 13], "send_two_factor_email": 13, "sends": 13, "senh": [0, 2, 3, 5, 6, 13], "sens": [0, 12], "sensitiv": [5, 12], "sens\u00edvel": 6, "sent": [5, 6, 13, 16], "sen\u00e3": 6, "separ": [6, 14], "separat": [6, 12, 13, 16], "separated": [2, 5, 6, 14, 16], "separating": [8, 12], "separator": 12, "sequenc": [5, 6], "sequencial": 6, "sequ\u00eanc": 6, "seq\u00fcenc": 6, "seq\u00fc\u00eanc": 6, "ser": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 13, 14], "seri": 1, "serializ": [4, 6, 8, 10], "serializabl": [0, 5, 6], "serialized": [5, 6, 10, 12], "serv": [0, 2, 3, 4, 7, 8, 13, 15, 16, 17], "served": [2, 6], "server_addr": 6, "servers": [2, 6], "serversid": 16, "servidor": [0, 4, 5, 6], "serving": 16, "ser\u00e3": [4, 6, 10], "session": [0, 2, 4, 6, 10, 12, 13, 14, 15, 16, 17], "session_app1": 5, "session_secret_key": 5, "sessions": [0, 6, 15], "sess\u00e3": [4, 17], "sess\u00f5": 5, "set": [0, 2, 5, 7, 8, 10, 11, 14, 15, 16], "set_attribut": 6, "set_encoding": 6, "set_head": 6, "set_password": 3, "setinterval": 16, "sets": [2, 5, 6, 12], "setting": [2, 4, 5, 6, 12, 14], "settings": [1, 4, 5, 6, 10, 13, 15, 16], "setup": [1, 3, 4, 13, 16], "setvirtualfields": 6, "severity": 6, "se\u00e7\u00e3": 6, "se\u00e7\u00f5": 6, "sf": 16, "sftp": 6, "sh": 16, "sha512": [8, 12], "shar": [5, 6, 15], "shared": 5, "shell": 10, "ships": 8, "sho": 6, "shopping": 5, "short": [12, 16], "shortcut": [6, 8, 12], "should": [1, 2, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "show": [2, 5, 6], "show_id": 14, "showed": 13, "showing": 14, "shown": [2, 6, 12, 13], "shows": [4, 8, 12, 13], "shutil": 6, "si": [6, 14], "sid": [6, 16, 17], "sideb": 8, "sidebar_enabled": 8, "sidebar_menu": 10, "sidec": 16, "sign": [5, 8, 13], "signatur": [5, 6, 7, 10, 12], "signed": [2, 5, 12], "signed_url": 5, "signif": [5, 6, 7], "signific": [6, 8], "significant": 8, "signing": 5, "signing_inf": 12, "signs": 5, "sim": 6, "simbol": 2, "simb\u00f3l": 4, "simil": [0, 12, 15], "similar": [6, 10], "similariti": 15, "simpl": [1, 2, 4, 5, 6, 7, 8, 10, 12, 14, 16, 17], "simple_query": 16, "simples": [4, 6, 11], "simplest": 2, "simplicity": [6, 16], "simplific": 6, "simplified": [0, 4, 8], "simply": [2, 4, 5, 6, 8, 12, 16], "simultan": 6, "simult\u00e2n": 6, "sinal": 6, "sinc": [0, 4, 5, 7, 8, 14, 15], "singl": [2, 5, 6, 7, 8, 12, 13, 14], "singleton": [5, 15], "sintax": [4, 6, 10, 13, 17], "sint\u00e1t": 5, "sistem": [0, 2, 5, 6], "sit": [1, 2, 4, 5, 6, 10, 14, 16], "situa\u00e7\u00e3": 6, "siz": [5, 8, 12], "skip": 16, "slash": [1, 4, 5, 13], "sleep": 16, "sleep_tim": 16, "slick": 0, "slow": [6, 16], "slug": 12, "small": [5, 12], "snippets": 6, "so": [2, 5, 6, 8, 10, 12, 13, 14, 15, 16], "soap": 10, "sob": [4, 6], "sobr": [0, 8], "sobrecarg": 6, "sockets": 16, "solicit": [0, 6], "solt": 6, "solution": [0, 2, 16], "solu\u00e7\u00e3": [1, 6], "som": [0, 1, 2, 4, 5, 6, 7, 8, 10, 12, 13, 15, 16], "some_condition": 8, "some_form": 12, "some_valu": 6, "somefield": 6, "somefil": 6, "soment": [2, 4, 6, 8], "somepath": 5, "sometabl": 6, "something": [6, 7, 8, 10, 12, 16], "sometim": [6, 8, 10, 12], "somevalu": 6, "somewhat": 12, "somewher": 6, "soon": [8, 16], "sophisticated": 15, "sort": 12, "sorted": 14, "sorting": 12, "sourc": [1, 2, 3, 4, 6, 12, 16], "source1": 12, "south": 1, "sp": 6, "spac": [6, 8, 12, 14], "span": [4, 15], "spatialit": 6, "speaking": 5, "special": [0, 5, 6, 8, 13, 15, 17], "specialization": 6, "specials": 12, "specific": [2, 5, 6, 8, 10, 12, 13, 15, 16], "specifically": [5, 6, 12, 16], "specifications": 7, "specified": [5, 6, 8, 10, 12, 13, 14, 15, 16], "specify": [2, 4, 5, 6, 7, 12, 13, 14, 16], "specifying": 10, "speed": [7, 8], "sphinx": 1, "spiderman": [7, 14], "spin": [0, 4], "spirit": 7, "split": [6, 7, 8, 12], "split_emails": 12, "sql": 17, "sql_mod": 6, "sqladapt": 6, "sqlcustomtyp": 6, "sqlform": [0, 12, 15], "sqlforms": 12, "sqlit": [1, 5, 7, 13, 14, 16], "sqlite3": 6, "sqliteadapt": 6, "squar": 8, "src": [5, 6, 8, 10, 12, 16], "ss": 12, "ssl": 2, "ssl_cert": 2, "ssl_key": 2, "sslcert": 6, "sslkey": 6, "sslmod": 6, "sslrootcert": 6, "sso_id": [5, 13], "stabl": 2, "stand": 12, "standard": [1, 2, 3, 6, 7, 13, 14, 15, 16, 17], "standards": [12, 14], "stands": 10, "start": [1, 2, 3, 4, 5, 6, 10, 12, 13, 14, 16], "start_impersonating": 13, "started": 16, "starting": [2, 4, 6, 12], "starts": [0, 3, 5, 8, 15], "startup": [6, 15], "stat": [5, 7, 15, 16], "stated": 5, "stateful": 5, "stateless": [5, 16], "statement": 8, "statements": [8, 12], "static": [1, 4, 8, 10, 15], "static_dev": 4, "status": 7, "stderr": [2, 16], "stdout": [2, 16], "steil": [0, 1, 14], "step": [13, 15], "step1": 5, "step2": 5, "step3": 5, "step_completed": 5, "stepping": 16, "steps": 2, "still": [5, 6, 10, 12, 14, 15], "ston": 14, "stop": [2, 13], "stop_impersonating": 13, "stor": [5, 6, 12, 13], "storag": [5, 6, 7, 14], "stored": [0, 5, 6, 12, 13, 15, 16], "stored_it": 6, "stored_item_archiv": 6, "storing": 5, "story": 0, "str": [2, 5, 6, 10, 12, 15, 16], "stre": [5, 6], "streaming": [4, 15], "strength": 7, "strict": 12, "strictly": [4, 16], "string": [4, 5, 6, 7, 10, 11, 12, 14], "stringi": 6, "stringlistproperty": 6, "strings": [10, 12, 14], "strip": 12, "stripped": [2, 15], "strong": [0, 10, 13], "strongly": [1, 5, 12, 14], "structur": [1, 4, 6, 13, 14, 15, 17], "stuck": 2, "students": 2, "studi": 1, "study": 1, "stuff": [12, 14], "style": [4, 6, 8, 12, 16, 17], "styles": 14, "stylesheet": [8, 14], "styling": 14, "sub": 6, "subcl": 6, "subclassing": 12, "subconjunt": [0, 6], "subfold": 6, "subfolders": [5, 6], "subheadings": 10, "subject": [6, 7, 13], "sublinh": 6, "submet": 12, "submission": [12, 16], "submit": [1, 5, 6, 10, 12, 14], "submitted": 16, "submitting": 13, "subm\u00f3dul": 0, "subnet": 12, "subnets": 12, "subpast": 4, "subqueri": 16, "subset": 12, "subse\u00e7\u00e3": 6, "substitu": [0, 2, 6, 8, 10], "substitui\u00e7\u00f5": 14, "substitutions": 8, "substitu\u00edd": 6, "substring": [6, 12], "succeeded": 0, "success": [5, 7, 16], "successful": [0, 13], "successfully": 13, "suced": 6, "sucess": [4, 6], "such": [6, 10, 12, 14, 15], "sud": [2, 13], "suffered": 0, "suffers": 13, "suficient": [6, 14], "suger": [1, 6], "sugest\u00f5": 17, "suggest": [1, 12], "sugiz": 0, "sup": 7, "super": 6, "superher": [6, 7, 12, 14, 16], "superhero": 7, "superior": 11, "superman": [6, 7, 12, 14], "superpotent": 7, "superpow": [6, 7], "superseeded": 6, "supond": [2, 6], "suponh": 6, "supor": 6, "suport": [0, 11, 17], "supplied": 10, "support": [1, 2, 6, 12, 15], "supported": [11, 12, 13], "supporting": 16, "supports": [4, 5, 8, 10, 12, 16], "suppress": 2, "suprim": 10, "sur": [5, 12, 13, 16], "surely": [3, 4], "surrounding": 12, "susan": 6, "sutil": 6, "sv": 6, "switch": [2, 5, 6], "sybas": 6, "sybaseadapt": 6, "symbol": 12, "symbols": 12, "sync": [2, 6], "synops": 12, "syntactic": 12, "syntax": [0, 1, 4, 5, 6, 7, 8, 10, 12, 15, 16], "system": [0, 2, 5, 6, 10, 13, 16], "systems": 16, "sysus": 6, "s\u00e3": [0, 1, 3, 4, 5, 6, 8, 10, 11, 13, 14], "s\u00e9ri": 6, "t": [0, 2, 4, 5, 6, 8, 10, 11, 12, 13, 14, 15], "t_fold": 5, "tab": [3, 5, 12], "tabel": [5, 10, 13, 14, 15], "tabl": [5, 7, 12, 13, 14, 15, 16, 17], "table1": 6, "table_hash": 6, "table_nam": 6, "tablenam": [6, 7, 12, 16], "tag": [0, 6, 7, 8, 13, 15, 16], "tag_input": 16, "tagg": 10, "tagged_db": 13, "tagged_nam": 13, "tagging": [10, 13], "tags": [0, 5, 6, 8, 10, 12, 15, 16, 17], "tags_input": 16, "tags_inputs": 16, "tail": 6, "tais": 6, "tak": [2, 3, 5, 6, 8, 12, 13, 14, 16], "taken": 12, "tal": 6, "talvez": [2, 5], "tamanh": 6, "tampering": [5, 6], "tant": [6, 16], "tantissim": 11, "tar": 12, "tard": [4, 6], "taref": [1, 5, 6, 13], "target": [10, 16], "task": 16, "task_run": 16, "tasks": [6, 16], "tast": 6, "tbody": 6, "tcp": 3, "td": 6, "teach": 13, "technically": 16, "tecl": [6, 11], "tell": [4, 13, 16], "telling": [2, 13], "tells": [5, 16], "temp": [2, 8], "templat": [0, 4, 10, 12, 13, 15, 16, 17], "temporarily": 5, "tempor\u00e1ri": 6, "ten": 12, "tenancy": 6, "tenh": [1, 5, 6], "tent": [5, 6], "ter": [2, 4, 5, 6, 10], "teradat": 6, "teradataadapt": 6, "terceir": 6, "tered": 12, "term": 6, "termin": 10, "terminal": 4, "terminat": [8, 16], "terms": 12, "terr": 6, "ter\u00e3": 6, "test": [2, 6, 8, 10, 12, 14], "tested": [0, 2, 10, 13], "testing": [4, 6], "text": [2, 5, 6, 8, 10, 14, 16], "textar": 12, "textareawidget": 12, "textual": 10, "th": 6, "than": [0, 5, 6, 8, 10, 12, 13, 14, 16], "thank": 10, "thanks": 0, "that": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13, 14, 15, 16], "that_templat": 8, "the": [0, 3, 8, 10, 11, 13, 15, 17], "thead": 6, "them": [0, 1, 2, 4, 5, 6, 7, 8, 12, 13, 14, 15], "themselv": [6, 8], "then": [2, 4, 5, 6, 8, 10, 12, 13, 14, 15, 16], "ther": [1, 2, 5, 6, 8, 12, 13, 14, 15, 16], "therefor": [4, 5, 8, 12, 15], "thes": [2, 4, 5, 6, 8, 10, 12, 14, 16], "they": [2, 4, 5, 6, 7, 8, 12, 13, 15, 16], "thing": [5, 6, 12, 15], "thing_id": 12, "thing_tags_default": 6, "things": [2, 5, 6, 12], "think": [5, 8, 14, 16], "third": [0, 5, 12], "this": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "this_templat": 8, "thisisatest": 10, "thisisthekey": 12, "thos": [5, 6, 8, 10, 13, 15, 16], "though": 8, "thought": [0, 6, 13], "thre": [0, 5, 6], "thread": [6, 15, 16], "threaded": [2, 15], "threads": [5, 6], "threadsafevariabl": 5, "through": [2, 12], "throughout": 5, "thumbnail": 12, "ti": 5, "ticket": 6, "tickets_only": 2, "til": 6, "tim": [0, 4, 5, 6, 8, 14, 15, 16], "timed": 6, "timedelt": 12, "timeoffset": 10, "timeout": [5, 16], "timeouts": 16, "timestamp": [5, 7, 16], "tint": 4, "tip": [4, 14], "tips": [2, 14], "tir": 6, "titl": [8, 12, 16], "tiv": 6, "tmp": [5, 6], "to": [0, 1, 2, 3, 4, 5, 7, 8, 10, 11, 12, 13, 14, 15, 16], "tod": [1, 2, 3, 4, 5, 7, 8, 10, 11, 13, 14, 16], "today": [0, 12, 16], "togeth": [0, 8], "token": [5, 12], "tom": 6, "too": [2, 5, 6, 12, 16], "took": 6, "tool": 0, "tools": [6, 13, 16], "top": [8, 12, 13], "topics": [14, 17], "torn": [1, 2, 5, 6, 10, 14], "total": [1, 6, 7], "total_pric": 6, "touch": 8, "toy": 6, "tr": 6, "trabalh": [2, 4, 6, 7], "traceback": 6, "tracebacks": 5, "track": [1, 15], "trad": 6, "tradicion": 6, "tradicional": 6, "traditional": 2, "tradutor": 4, "traduz": [1, 6, 8, 11], "tradu\u00e7\u00e3": [5, 17], "tradu\u00e7\u00f5": [5, 11], "trailing": [2, 12], "training": 1, "transaction": [5, 6], "transactions": 6, "transational": 16, "transa\u00e7\u00f5": 6, "transform": [4, 5, 6, 12, 16], "transformed": [5, 6], "transforms": 5, "transitions": 16, "translat": 16, "translated": [5, 8, 12], "translation": [12, 15], "translations": [5, 11, 16], "translator": [2, 11, 17], "transmit": 3, "transparent": [6, 8, 12], "transparently": 8, "trapped": 16, "trat": [4, 6], "tre": [8, 12], "treated": [6, 15], "tri": [6, 15], "trickery": 8, "tricks": 2, "tried": 0, "trigg": [6, 16], "triggers": 5, "trivial": [5, 6], "tru": [1, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "trunc": 6, "truncat": 6, "truth": 16, "try": [2, 5, 6, 8, 12, 13, 16], "trying": [1, 12, 13], "tr\u00e1s": 6, "tr\u00eas": 6, "ttl": 5, "tud": [5, 6], "tupl": [6, 8, 10], "turn": [12, 13, 14, 16], "turned": 0, "turns": [6, 16], "tutorial": [1, 2, 4, 14, 16], "tutorials": 1, "twic": [5, 6], "twitt": [0, 5, 13], "two": [1, 2, 4, 5, 6, 8, 12, 14, 15, 16], "two_factor": 13, "two_factor_filt": 13, "txt": [0, 2, 4, 6], "type": [2, 5, 7, 8, 10, 13, 16], "types": 12, "typical": [5, 6, 12], "typically": [4, 8], "typs": 12, "t\u00eam": [2, 4, 6, 13], "t\u00edpic": 6, "t\u00edtul": [3, 10, 14], "t\u00f3pic": 6, "u": [2, 6, 10], "ubuntu": 13, "uc": 1, "ui": 13, "uid": 6, "ul": [8, 12, 13, 16], "un": [8, 10, 11, 16], "unauthenticated": [5, 6, 10], "unauthorized": 6, "unchanged": 12, "under": [2, 3, 4, 5, 6, 12], "underlying": 15, "underscor": [6, 10, 12], "understand": [0, 2, 4, 6, 7, 8], "understanding": 17, "undocumented": 16, "unfortunat": 6, "unfortunately": 14, "unicod": [6, 12], "unicodedecodeerror": 6, "unid": 6, "uniform": 6, "uniqu": [6, 7, 12], "unit_pric": 6, "unit\u00e1ri": 6, "universal": [4, 6, 10], "uni\u00e3": 6, "unknown": 4, "unless": [3, 5, 6, 8, 12, 16], "unlik": [0, 2, 7, 8, 15, 16], "unnamed": 6, "unneded": 2, "unordered": 10, "unpkg": 16, "unquoted": 10, "uns": 5, "unsaf": [5, 10, 12], "untested": [2, 13], "until": [0, 5, 6, 8, 12], "un\u00e1ri": 6, "up": [1, 2, 5, 6, 8, 13, 16], "updat": [2, 5, 12, 14, 15, 16], "update_form": 12, "update_languag": 11, "update_naiv": 6, "update_thing": 12, "updated": [5, 6, 12], "upgrad": [2, 6], "upgraded": 2, "upload": [4, 6], "upload_fold": [6, 12], "upload_help": 16, "uploaded": [6, 12, 15], "uploadfield": 6, "uploadfold": 6, "uploadfs": 6, "uploads": 6, "uploadseparat": 6, "upon": [2, 13, 15], "upper": [4, 5, 12], "upper_cas": 5, "uppercas": [5, 12], "uri": 13, "uris": 6, "url": [4, 5, 7, 8, 12, 13, 14, 15, 16], "url_prefix": 2, "url_sign": 5, "url_to_post_t": 16, "urls": [2, 12, 15], "urlsign": 17, "us": [2, 12], "usa": [0, 4, 5, 6, 8], "usabl": 14, "usad": [0, 4, 6, 10, 11, 13, 14], "usag": [2, 3, 4, 5, 6, 10, 12, 13, 14], "usam": 6, "usand": [4, 5, 8, 10, 13, 17], "usar": [2, 4, 5, 6, 8, 10, 14], "use": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "use_schedul": 16, "used": [2, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "useful": [2, 4, 8, 10, 12, 14, 16], "usefull": 12, "useless": [12, 15], "user": [2, 4, 5, 6, 7, 8, 10, 12, 14, 15, 16], "user_email": 15, "user_id": [5, 6, 13, 15], "user_nam": 6, "user_outside_network": 13, "user_password": 6, "usernam": [5, 6, 13], "users": [0, 1, 4, 5, 13, 15], "uses": [0, 1, 2, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "using": [0, 1, 3, 4, 6, 7, 12, 15, 17], "uso": [2, 5, 14], "usos": 6, "usou": [5, 6], "usr": 1, "usual": [2, 8, 10, 12], "usually": [1, 5, 7, 12], "usu\u00e1ri": [1, 2, 3, 4, 5, 6, 13, 15], "us\u00e1": [2, 6, 8], "utcnow": [5, 6], "utf": 6, "utf8": 6, "utf8mb4": 6, "utility": [2, 12], "utiliz": [2, 3, 4, 5, 6, 10, 13, 14], "utilizing": 14, "utils": [2, 4, 5, 8, 10, 12, 13, 14, 15, 17], "uuid": [5, 6], "uuid4": [5, 6], "uuids": 6, "v": [5, 10, 12, 16], "v3": 1, "vai": [1, 4, 6, 8], "val": 14, "val1_row1": 6, "val1_row2": 6, "val2_row1": 6, "val2_row2": 6, "valid": [4, 6, 10, 15, 17], "validad": 6, "validat": [6, 12], "validate_js": 4, "validated": 12, "validation": [4, 6, 7, 8, 14], "validator": [6, 12], "validators": [2, 15], "validity": 12, "valios": 1, "valor": [5, 10, 11, 12, 14], "valq7711": [0, 4], "vals": 16, "valu": [2, 4, 5, 6, 7, 8, 10, 11, 12, 14, 16], "value1": 6, "value2": 6, "value_field": 12, "valued": 12, "vam": [1, 6, 10], "vantag": 6, "vantagens": 6, "var": 16, "varch": 6, "vari": 6, "variabl": [5, 6, 10, 12, 14, 16], "various": 5, "vari\u00e1vel": [4, 6, 10, 11], "varredur": 6, "vars": [6, 10, 12, 15], "vaz": 6, "vazi": [2, 6], "ve": [2, 3, 5, 8, 10, 12, 14, 16], "vej": [2, 3], "veloc": 6, "vem": [0, 4, 6], "vendor": 16, "vendor_typ": 16, "vendors": 16, "venv": 2, "ver": [2, 6, 13], "verd": 4, "verdad": 14, "verdadeir": [6, 12, 14], "verif": 6, "verific": [5, 6, 13], "verification": 13, "verified": [5, 12], "verify": 5, "verify_email": 13, "verifying": 13, "vermelh": 4, "vers": 5, "version": [1, 3, 7, 8, 12, 16], "versions": [2, 5, 12], "vers\u00f5": 6, "vertic": 6, "verticaadapt": 6, "very": [0, 4, 8, 10, 12, 13, 15, 16], "vez": [2, 4, 5, 8, 10, 13, 14], "ve\u00edcul": 5, "via": [5, 6, 8, 10, 16], "vias": 6, "vic": 5, "vid": [1, 2, 16], "view": [1, 5, 6], "viewport": 8, "views": 6, "vincul": 6, "vind": 2, "vir": 13, "virtual": [1, 17], "virtualenv": [1, 2], "virtualfields": 6, "visit": [3, 5, 12], "visit_log": 5, "visited": [5, 8], "visiting": [5, 13], "visitor": 6, "visitors": [10, 12], "visits": 6, "vist": [5, 6, 10], "visual": 1, "visualiz": 6, "vis\u00e3": 6, "vis\u00edvel": 4, "vital": 13, "voc": [1, 2, 3, 4, 5, 6, 8, 10, 13, 14], "volt": [5, 6], "vou": 2, "vscod": 2, "vue": [0, 4, 16], "vulner": 8, "v\u00e1l": 4, "v\u00e1r": [2, 4, 5, 6], "v\u00e1ri": [4, 5, 6, 11], "v\u00e3": 6, "v\u00ea": 6, "v\u00edrgul": 6, "v\u00f4o": 7, "w": [2, 4, 5, 6], "w2p_even": 6, "w2p_odd": 6, "waitress": 2, "want": [2, 4, 5, 6, 8, 12, 16], "wants": 5, "warning": [2, 5], "was": [0, 5, 6, 12, 13], "watch": [2, 3, 17], "watched": 4, "way": [2, 3, 5, 6, 8, 10, 12, 13, 15], "wayn": [7, 14], "ways": [0, 2, 4, 6, 13, 14, 16], "wb": 6, "we": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "web": [0, 1, 2, 5, 6, 8, 13, 14, 15, 16, 17], "web2py": [0, 1, 2, 3, 4, 6, 12, 13, 14, 17], "websit": [6, 16], "websocket": 16, "welcom": [4, 5, 8, 15, 16], "well": [0, 5, 6, 8, 12, 13, 16], "wer": [0, 4], "what": [4, 5, 6, 8, 12, 13, 15, 16], "whatev": [10, 16], "when": [0, 2, 3, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "whenev": 4, "wher": [1, 2, 4, 6, 8, 12, 13, 15, 16], "wheth": [5, 6, 12, 13, 15], "which": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "whichev": 16, "whil": [5, 6, 7, 12, 13, 15], "whit": [10, 16], "whitelist": 13, "who": [0, 13], "whol": [4, 12], "whos": [6, 8, 12], "why": [5, 8, 15], "widget": [6, 12], "widgets": [16, 17], "width": [8, 12], "wik": [6, 7], "wikiped": [6, 7], "wild": 6, "wildcard": 4, "will": [1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "window": [5, 8, 12], "windows": [1, 2, 4, 6], "wish": 16, "wishing": 12, "wit": 2, "with": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 14, 16], "with_al": 6, "withh": 5, "within": [0, 1, 5, 6, 8, 10, 12, 16], "without": [6, 8, 10, 16, 17], "wolf": 0, "wood": 6, "words": [5, 14], "work": [0, 2, 4, 5, 6, 8, 10, 12, 16], "worked": 0, "workers": 2, "workflow": [5, 17], "working": [2, 12], "workload": 6, "workplac": 1, "works": [2, 6, 8, 12, 13, 14, 15, 16], "workspacefold": 2, "world": [4, 5, 6, 8, 10, 12], "worry": 4, "worth": 8, "would": [0, 5, 6, 10, 12, 16], "wouldn": 6, "wrap": [12, 16], "wrapp": 16, "wrapped": 5, "wrappers": 15, "writ": [2, 4, 5, 6, 8], "writabl": [5, 6, 12, 15], "writing": [4, 6, 15], "written": [1, 8, 12, 14], "wrong": [0, 5, 6], "wsgi": 5, "wsgiref": 2, "wsgirefthreadingserv": 2, "wsgith": 2, "www": [2, 8, 10, 14], "x": [2, 6, 8, 10, 12, 14, 16], "xml": [5, 8, 12, 15, 16], "xmlescap": 10, "xmlns": 10, "xss": [6, 8, 10], "xyz": [10, 12], "y": [2, 10, 12], "yaml": 2, "yatl": [0, 4, 5, 6, 12, 14, 16, 17], "yb": 10, "year": [12, 16], "yes": [2, 6, 16], "yes_or_n": 6, "yet": [0, 2, 4, 5, 8, 12, 16], "yml": 2, "you": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "your": [1, 2, 3, 4, 5, 6, 8, 10, 12, 13, 14, 15, 16], "your_app": 12, "your_full_path_to_py4web": 1, "your_nam": [1, 16], "yourapp": 6, "yourappnam": 2, "youremail": 13, "yourself": [1, 12], "youtub": [2, 6], "yyyy": 12, "z": [10, 12], "zanferrar": 0, "zap": 13, "zap_id": 13, "zapp": 13, "zapped": 13, "zer": [6, 8, 12, 14], "zip": [0, 2, 6, 12], "zip_cod": 16, "zxjdbc": 6, "\u00c0s": [6, 10], "\u00e1rvor": 4, "\u00e2mbit": 4, "\u00e9": [1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13, 14, 15, 17], "\u00e9poc": 6, "\u00edndic": 4, "\u00f3bvi": [6, 8], "\u00f3ptim": 4, "\u00faltim": [5, 6, 13], "\u00fanic": [0, 2, 6, 10], "\u00fate": [1, 6], "\u00fatil": 6}, "titles": ["O que \u00e9 py4web?", "Ajuda, recursos e dicas", "Instala\u00e7\u00e3o e coloca\u00e7\u00e3o em funcionamento", "O Dashboard", "Creating an app", "Fixures", "The Database Abstraction Layer (DAL)", "The RestAPI", "Linguagem de template YATL", "<no title>", "Helpers YATL", "Internacionaliza\u00e7\u00e3o", "Foruml\u00e1rios", "Authentication and authorization", "Rede", "De web2py para py4web", "Advanced topics and examples", "py4web: o manual de refer\u00eancia"], "titleterms": {"A": [3, 6, 10, 12], "As": 1, "Comando": 6, "Como": 1, "De": 15, "Do": 4, "EM": 10, "Em": 4, "Este": 1, "Mais": 6, "O": [0, 1, 3, 4, 5, 6], "OS": 15, "Os": [6, 14], "Um": [1, 6], "_lastsql": 6, "_scaffold": 4, "about": 5, "abstraction": 6, "accessing": 15, "acknowledgments": 0, "actions": [7, 13], "adapt": 6, "adicion": 6, "advanced": [12, 16], "agrup": 6, "ajud": 1, "aka": 2, "alias": 6, "alon": 6, "amostr": 14, "an": 4, "and": [6, 7, 8, 12, 13, 14, 15, 16], "antig": 6, "any_of": 12, "anywher": 5, "aplic": 6, "app": [2, 4], "args": 15, "arquiv": 11, "as_dict": 6, "as_list": 6, "assinatur": 6, "asynci": 16, "atalh": 6, "atribut": 6, "atualiz": [6, 11], "aut": 6, "autentic": 13, "auth": [5, 13, 15], "authentication": 13, "authorization": 13, "autocomplet": 16, "avanc": 6, "avg": 6, "a\u00e7\u00e3": 14, "banc": 6, "bas": 6, "basic": [12, 14], "beautify": 10, "belongs": 6, "bin\u00e1ri": 2, "block": 8, "body": 10, "bot\u00e3": 14, "bot\u00f5": 14, "built": 10, "b\u00e1sic": 8, "cach": 6, "caching": 5, "cad": 6, "call": 2, "callabl": 14, "calling": 15, "camp": [6, 14], "caracter\u00edst": 6, "cas": 6, "cascad": 6, "cat": 10, "caveats": 5, "celery": 16, "cham": 6, "chang": 4, "chav": 6, "checkbox": 12, "children": 10, "class": 14, "cleanup": 12, "client": 5, "coalesc": 6, "coalesce_zer": 6, "coloc": 2, "columns": 14, "comando": 2, "combin": 6, "commit": 6, "complexity": 12, "comput": 6, "computed": 6, "comuns": 6, "condition": 5, "conex\u00e3": 6, "conex\u00f5": 6, "configur": [2, 6], "constructor": 12, "construtor": 6, "consult": 6, "cont": 6, "contains": 6, "conte\u00fad": 17, "contribu": 1, "control": 6, "convenient": 5, "conversion": 15, "cooki": 5, "copi": 6, "copying": 4, "corr": 2, "count": [6, 15], "creating": 4, "crud": 14, "crypt": 12, "csv": 6, "custom": [12, 14], "customizing": 14, "dad": 6, "dal": [5, 6], "dashboard": 3, "dat": 12, "databas": [5, 6, 12], "datastor": 6, "day": 6, "db": 6, "decor": 5, "def": 8, "default": 8, "defeit": 6, "defin": 6, "define_tabl": 6, "deix": 6, "delet": 6, "deployment": 2, "depur": 1, "design": [2, 12], "development": 8, "dic": 1, "dicion\u00e1ri": 6, "dictionari": 12, "din\u00e2m": 4, "discord": [1, 13], "distinct": 6, "distint": 6, "distribu\u00edd": 6, "div": 10, "dock": 2, "dom": 10, "drop": 6, "elif": 8, "else": 8, "endswith": 6, "engin": 2, "envi": 6, "environment": 2, "equality": 12, "estil": 6, "est\u00e1t": 4, "etiquet": 13, "exampl": [7, 12, 14, 15, 16], "excet": 8, "exclud": 6, "exclus\u00e3": 6, "execu": 6, "executesql": 6, "experiment": 6, "experimental": 6, "export": 6, "express\u00f5": 6, "extend": 8, "extending": 8, "facebook": 13, "factor": 13, "fake_migrat": 6, "falh": 6, "faz": 6, "featur": 14, "fich": 6, "field": [6, 12], "fields": 6, "fil": [4, 12, 15], "filter_in": 6, "filter_out": 6, "filtering": 14, "filtr": 6, "finally": 8, "find": [6, 10], "first": 6, "fixa\u00e7\u00e3": 6, "fixtur": 5, "fixur": 5, "flash": [5, 15], "font": [1, 2], "form": [10, 12, 15, 16], "format": [6, 12, 16], "forms": 12, "formul\u00e1ri": 12, "foruml\u00e1ri": 12, "from": 2, "funcion": 2, "functions": [8, 12], "gae": 2, "gcloud": 2, "generating": 6, "get": 7, "github": 1, "global": 2, "googl": [1, 2, 6, 13], "grid": [14, 15, 16], "groupby": 6, "grup": 1, "h1": 10, "h2": 10, "h3": 10, "h4": 10, "h5": 10, "h6": 10, "having": 6, "head": 10, "hell": 15, "helpers": 10, "heranc": 6, "hour": 6, "html": [6, 10], "htmx": 16, "https": 2, "i": 10, "id": 6, "if": 8, "ilik": 6, "img": 10, "impersonation": 13, "implant": 2, "import": 6, "in": [5, 8, 10, 16], "includ": 8, "inferior": 6, "information": 8, "inject": [5, 10], "inner": 6, "input": 10, "inser": 6, "insert": 6, "inser\u00e7\u00e3": 6, "insid": 13, "instal": 2, "installations": 2, "installing": 2, "interfac": 13, "internacionaliz": 11, "introduction": 6, "is_alphanumeric": 12, "is_dat": 12, "is_date_in_rang": 12, "is_datetim": 12, "is_datetime_in_rang": 12, "is_decimal_in_rang": 12, "is_email": 12, "is_empty_or": 12, "is_equal_t": 12, "is_expr": 12, "is_fil": 12, "is_float_in_rang": 12, "is_imag": 12, "is_in_db": 12, "is_in_set": 12, "is_int_in_rang": 12, "is_ipaddress": 12, "is_ipv4": 12, "is_ipv6": 12, "is_json": 12, "is_length": 12, "is_list_of": 12, "is_list_of_emails": 12, "is_low": 12, "is_match": 12, "is_not_empty": 12, "is_not_in_db": 12, "is_null_or": 12, "is_saf": 12, "is_slug": 12, "is_strong": 12, "is_tim": 12, "is_upload_filenam": 12, "is_upp": 12, "is_url": 12, "isempty": 6, "iter": 6, "join": 6, "joins": 6, "js": 16, "junt": 6, "key": 14, "label": 10, "last": 6, "lay": 6, "layout": 8, "ldap": 13, "left": 6, "leg": 6, "len": 6, "less": 6, "li": 10, "lik": 6, "limitby": 6, "linguag": 8, "linh": 2, "list": 6, "local": [1, 2, 6], "low": 6, "l\u00f3gic": 6, "manipulation": 12, "manual": [1, 17], "many": 6, "marca\u00e7\u00e3": 6, "max": 6, "melhor": 2, "memcach": 5, "memoiz": 5, "mem\u00f3r": 6, "mesm": 6, "methods": [6, 15], "microsoft": 6, "migrat": 6, "migra\u00e7\u00e3": 6, "migra\u00e7\u00f5": 6, "min": 6, "minimal": 12, "minut": 6, "mobil": 8, "model": [4, 6], "modern": 1, "modific": 6, "month": 6, "mssql": 6, "muit": 6, "multipl": [5, 13], "mysql": 6, "new_app": 2, "nom": 6, "nosql": 6, "not": 6, "nov": 6, "oauth2": 13, "object": [14, 16], "objects": 13, "objet": 4, "obten\u00e7\u00e3": 6, "ol": 10, "on": 2, "on_defin": 6, "oper": 6, "option": 10, "options": 12, "op\u00e7\u00e3": 2, "op\u00e7\u00f5": 2, "orden": 6, "orderby": 6, "orderby_on_limitby": 6, "or\u00e1cul": 6, "other": 12, "out": 6, "outr": 6, "overview": 10, "p": 10, "padr\u00e3": 6, "pag": 8, "palavr": 6, "pam": 13, "par": [6, 8, 15], "paramet": 12, "parameters": 14, "part": [2, 6], "par\u00e2metr": 6, "past": 6, "pegadinh": 6, "permiss\u00f5": 13, "personaliz": [5, 6, 10, 14], "pip": 2, "plataform": 2, "plugins": 13, "plural": 6, "pluraliz": 11, "podman": 2, "polic": 7, "polymodel": 6, "pool": 6, "practical": 7, "pre": 10, "preguic": 6, "primarykey": 6, "primeir": 2, "prim\u00e1r": 6, "principal": 3, "princ\u00edpi": 4, "proced": 2, "pr\u00e9": [1, 2], "py4web": [0, 1, 6, 15, 16, 17], "pycharm": 1, "python": 1, "pythonanywher": 2, "p\u00e1gin": [3, 4], "q": 16, "quebr": 6, "query": 6, "quick": 6, "quoting": 6, "rang": 12, "raw": 6, "real": 6, "record": 6, "recurs": [1, 6], "red": [5, 14], "redefin": 6, "redirect": 15, "referent": [6, 14, 17], "regexp": 6, "registr": 6, "relation": 6, "relations": 6, "rela\u00e7\u00e3": 6, "remot": 6, "renderiz": 6, "replic": 6, "represent": 6, "request": 4, "requisit": [1, 2], "reserv": 6, "respons": 7, "restap": 7, "resum": 6, "retorn": [4, 6], "return": [8, 15], "returning": 15, "rnam": 6, "rollback": 6, "rot": 4, "row": 6, "rows": 6, "run": 2, "s": 6, "schedul": 16, "script": 10, "searching": 14, "seconds": 6, "security": 12, "segur": 6, "select": [6, 10], "selects": 6, "selet": 6, "sequence_nam": 6, "serv": [1, 5, 6, 10], "session": 5, "sessions": 5, "sess\u00e3": 3, "set": [6, 12], "set_password": 2, "setting": 15, "settings": 14, "setup": 2, "sharing": 5, "shell": [2, 6], "sid": [5, 10], "sidec": 12, "simpl": 15, "sincroniz": 6, "singul": 6, "sintax": 8, "sobr": 6, "sort": 6, "sorted": 12, "span": 10, "special": [2, 12], "sql": 6, "sqlit": 6, "stand": 6, "standard": [8, 12], "startswith": 6, "string": 16, "strings": 6, "structur": [8, 12], "style": [10, 14], "substrings": 6, "sugest\u00f5": 1, "sum": 6, "sup": 8, "suport": [2, 6], "supported": 6, "t": 16, "tabel": [6, 17], "tabl": [6, 10], "table_class": 6, "tag": 10, "tagging": 12, "tags": 13, "tbody": 10, "td": 10, "temp": 6, "templat": [5, 8, 14], "temporiz": 6, "tend": 6, "tent": 8, "tentat": 6, "text": 12, "textar": 10, "th": 10, "the": [1, 2, 4, 5, 6, 7, 12, 14, 16], "thead": 10, "tim": 12, "tip": 6, "titl": 10, "to": 6, "tod": 6, "topics": 16, "tour": 6, "tr": 10, "trabalh": 1, "tradu\u00e7\u00e3": 11, "transa\u00e7\u00e3": 6, "translator": 5, "trigger_nam": 6, "tt": 10, "tupl": 12, "tutori": 1, "two": 13, "two_factor_required": 13, "two_factor_send": 13, "two_factor_tri": 13, "type": [6, 12], "types": 6, "ubuntu": 2, "ul": 10, "understanding": 2, "up": 15, "updat": 6, "update_or_insert": 6, "update_record": 6, "upload": 12, "upper": 6, "uri": 6, "url": 10, "urlsign": 5, "usag": 16, "usand": [6, 14], "user": 13, "using": [2, 5, 8, 10, 13, 14, 16], "uso": 6, "utils": 16, "valid": 12, "validate_and_insert": 6, "validate_and_updat": 6, "validation": 12, "validators": [6, 12], "valor": [4, 6], "variabl": [8, 15], "velh": 6, "version": [2, 6], "vez": 6, "view": 15, "virtu": 6, "virtual": [2, 6], "vscod": 1, "v\u00edd": 1, "watch": 4, "web": [3, 4], "web2py": 15, "whil": 8, "widget": 16, "widgets": 12, "with": [12, 13, 15], "without": [2, 12], "workflow": 8, "world": 15, "wsgi": 2, "xml": [6, 10], "yatl": [8, 10], "year": 6, "\u00e9": 0, "\u00edndic": [6, 17]}}) \ No newline at end of file +Search.setIndex({"alltitles": {"A auto-refer\u00eancia e aliases": [[6, "self-reference-and-aliases"]], "A minimal form example without a database": [[12, "a-minimal-form-example-without-a-database"]], "A obten\u00e7\u00e3o de um `` row``": [[6, "fetching-a-row"]], "A p\u00e1gina Web principal": [[3, "the-main-web-page"]], "ANY_OF": [[12, "any-of"]], "Acknowledgments": [[0, "acknowledgments"]], "Adicionando atributos para campos e tabelas": [[6, "adding-attributes-to-fields-and-tables"]], "Advanced form design": [[12, "advanced-form-design"]], "Advanced topics and examples": [[16, "advanced-topics-and-examples"]], "Agrupamento e contando": [[6, "grouping-and-counting"]], "Ajuda, recursos e dicas": [[1, "help-resources-and-hints"]], "Aplicativos de modelo-less": [[6, "model-less-applications"]], "As fontes no GitHub": [[1, "the-sources-on-github"]], "Assinatura da DAL": [[6, "dal-signature"]], "Atalhos": [[6, "shortcuts"]], "Atualizar os arquivos de tradu\u00e7\u00e3o": [[11, "update-the-translation-files"]], "Authentication and authorization": [[13, "authentication-and-authorization"]], "Authentication using Auth": [[13, "authentication-using-auth"]], "Authorization using Tags": [[13, "authorization-using-tags"]], "Autocomplete Widget using htmx": [[16, "autocomplete-widget-using-htmx"]], "A\u00e7\u00e3o personalizada Bot\u00f5es": [[14, "custom-action-buttons"]], "Bancos de dados legados e tabelas com chave": [[6, "legacy-databases-and-keyed-tables"]], "Bancos de dados replicados": [[6, "replicated-databases"]], "Basic form example": [[12, "basic-form-example"]], "Basic grid example": [[14, "basic-grid-example"]], "Bot\u00e3o Classe A\u00e7\u00e3o Amostra": [[14, "sample-action-button-class"]], "Built-in helpers": [[10, "built-in-helpers"]], "CLEANUP": [[12, "cleanup"]], "CRUD settings": [[14, "crud-settings"]], "CRYPT": [[12, "crypt"]], "CSV (todas as tabelas ao mesmo tempo)": [[6, "csv-all-tables-at-once"]], "CSV (uma tabela de cada vez)": [[6, "csv-one-table-at-a-time"]], "CSV e sincroniza\u00e7\u00e3o de banco de dados remoto": [[6, "csv-and-remote-database-synchronization"]], "Caching e Memoize": [[5, "caching-and-memoize"]], "Campos computados": [[6, "computed-fields"]], "Campos virtuais": [[6, "virtual-fields"]], "Campos virtuais novo estilo (experimental)": [[6, "new-style-virtual-fields-experimental"]], "Campos virtuais velho antigo": [[6, "old-style-virtual-fields"]], "Caracter\u00edsticas avan\u00e7adas": [[6, "advanced-features"]], "Cascades no banco de dados": [[6, "database-cascades"]], "Caveats about fixtures": [[5, "caveats-about-fixtures"]], "Celery": [[16, "celery"]], "Checkbox validation": [[12, "checkbox-validation"]], "Client-side session in cookies": [[5, "client-side-session-in-cookies"]], "Combinando Rows": [[6, "combining-rows"]], "Como contribuir": [[1, "how-to-contribute"]], "Complexity and security validators": [[12, "complexity-and-security-validators"]], "Computed and Virtual fields": [[6, "computed-and-virtual-fields"]], "Configura\u00e7\u00f5es de quoting e case e do banco de dados": [[6, "database-quoting-and-case-settings"]], "Configura\u00e7\u00f5es padr\u00e3o de migra\u00e7\u00e3o": [[6, "default-migration-settings"]], "Construtor DAL": [[6, "dal-constructor"]], "Construtor Field": [[6, "field-constructor"]], "Construtor Table": [[6, "table-constructor"]], "Conte\u00fado:": [[17, null]], "Copiar dados de um para outro db": [[6, "copy-data-from-one-db-into-another"]], "Copying the _scaffold app": [[4, "copying-the-scaffold-app"]], "Creating an app": [[4, "creating-an-app"]], "Custom columns": [[14, "custom-columns"]], "Custom forms": [[12, "custom-forms"]], "Custom widgets": [[12, "custom-widgets"]], "Customizing style": [[14, "customizing-style"]], "DAL introduction": [[6, "dal-introduction"]], "Database validators": [[12, "database-validators"]], "Date and time validators": [[12, "date-and-time-validators"]], "De web2py para py4web": [[15, "from-web2py-to-py4web"]], "Decoradores de conveni\u00eancia": [[5, "convenience-decorators"]], "Default page layout": [[8, "default-page-layout"]], "Deployment on Docker/Podman": [[2, "deployment-on-docker-podman"]], "Deployment on GCloud (aka GAE - Google App Engine)": [[2, "deployment-on-gcloud-aka-gae-google-app-engine"]], "Deployment on Ubuntu": [[2, "deployment-on-ubuntu"]], "Depura\u00e7\u00e3o py4web com PyCharm": [[1, "debugging-py4web-with-pycharm"]], "Depura\u00e7\u00e3o py4web com VScode": [[1, "debugging-py4web-with-vscode"]], "Dicas e sugest\u00f5es": [[1, "hints-and-tips"]], "Dictionaries and tuples with IS_IN_SET": [[12, "dictionaries-and-tuples-with-is-in-set"]], "Do princ\u00edpio": [[4, "from-scratch"]], "Em valores de retorno": [[4, "on-return-values"]], "Este manual": [[1, "this-manual"]], "Etiquetas e permiss\u00f5es": [[13, "tags-and-permissions"]], "Experimentar com o shell py4web": [[6, "experiment-with-the-py4web-shell"]], "Exportar e importar dados": [[6, "exporting-and-importing-data"]], "Express\u00f5es": [[6, "expressions"]], "Extending using variables": [[8, "extending-using-variables"]], "Falhas de conex\u00e3o (par\u00e2metro tentativas)": [[6, "connection-failures-attempts-parameter"]], "Fazendo uma conex\u00e3o segura": [[6, "making-a-secure-connection"]], "Field types and validators": [[6, "field-types-and-validators"]], "File upload field": [[12, "file-upload-field"]], "Fixa\u00e7\u00e3o migra\u00e7\u00f5es quebrados": [[6, "fixing-broken-migrations"]], "Fixtures personalizados": [[5, "custom-fixtures"]], "Fixures": [[5, "fixtures"]], "Form structure manipulation": [[12, "form-structure-manipulation"]], "Foruml\u00e1rios": [[12, "forms"]], "Generating raw SQL": [[6, "generating-raw-sql"]], "Google NoSQL (Datastore)": [[6, "google-nosql-datastore"]], "Google SQL": [[6, "google-sql"]], "Grids with checkboxes": [[14, "grids-with-checkboxes"]], "HTML e XML (uma tabela de cada vez)": [[6, "html-and-xml-one-table-at-a-time"]], "HTTPS": [[2, "https"]], "Helpers YATL": [[10, "yatl-helpers"]], "Helpers overview": [[10, "helpers-overview"]], "Helpers personalizados": [[10, "custom-helpers"]], "Heran\u00e7a de tabela": [[6, "table-inheritance"]], "IS_ALPHANUMERIC": [[12, "is-alphanumeric"]], "IS_DATE": [[12, "is-date"]], "IS_DATETIME": [[12, "is-datetime"]], "IS_DATETIME_IN_RANGE": [[12, "is-datetime-in-range"]], "IS_DATE_IN_RANGE": [[12, "is-date-in-range"]], "IS_DECIMAL_IN_RANGE": [[12, "is-decimal-in-range"]], "IS_EMAIL": [[12, "is-email"]], "IS_EMPTY_OR": [[12, "is-empty-or"]], "IS_EQUAL_TO": [[12, "is-equal-to"]], "IS_EXPR": [[12, "is-expr"]], "IS_FILE": [[12, "is-file"]], "IS_FLOAT_IN_RANGE": [[12, "is-float-in-range"]], "IS_IMAGE": [[12, "is-image"]], "IS_INT_IN_RANGE": [[12, "is-int-in-range"]], "IS_IN_DB": [[12, "is-in-db"]], "IS_IN_DB and Tagging": [[12, "is-in-db-and-tagging"]], "IS_IN_SET": [[12, "is-in-set"]], "IS_IN_SET and Tagging": [[12, "is-in-set-and-tagging"]], "IS_IPADDRESS": [[12, "is-ipaddress"]], "IS_IPV4": [[12, "is-ipv4"]], "IS_IPV6": [[12, "is-ipv6"]], "IS_JSON": [[12, "is-json"]], "IS_LENGTH": [[12, "is-length"]], "IS_LIST_OF": [[12, "is-list-of"]], "IS_LIST_OF_EMAILS": [[12, "is-list-of-emails"]], "IS_LOWER": [[12, "is-lower"]], "IS_MATCH": [[12, "is-match"]], "IS_NOT_EMPTY": [[12, "is-not-empty"]], "IS_NOT_IN_DB": [[12, "is-not-in-db"]], "IS_NULL_OR": [[12, "is-null-or"]], "IS_SAFE": [[12, "is-safe"]], "IS_SLUG": [[12, "is-slug"]], "IS_STRONG": [[12, "is-strong"]], "IS_TIME": [[12, "is-time"]], "IS_UPLOAD_FILENAME": [[12, "is-upload-filename"]], "IS_UPPER": [[12, "is-upper"]], "IS_URL": [[12, "is-url"]], "Implanta\u00e7\u00e3o em PythonAnywhere.com": [[2, "deployment-on-pythonanywhere-com"]], "Information workflow": [[8, "information-workflow"]], "Inner join": [[6, "inner-join"]], "Inserir e atualizar a partir de um dicion\u00e1rio": [[6, "inserting-and-updating-from-a-dictionary"]], "Instalando a partir de bin\u00e1rios": [[2, "installing-from-binaries"]], "Instalando a partir de fonte (localmente)": [[2, "installing-from-source-locally"]], "Instala\u00e7\u00e3o de fonte (globalmente)": [[2, "installing-from-source-globally"]], "Instala\u00e7\u00e3o e coloca\u00e7\u00e3o em funcionamento": [[2, "installation-and-startup"]], "Installing from pip, using a virtual environment": [[2, "installing-from-pip-using-a-virtual-environment"]], "Installing from pip, without virtual environment": [[2, "installing-from-pip-without-virtual-environment"]], "Interface de autentica\u00e7\u00e3o": [[13, "auth-ui"]], "Internacionaliza\u00e7\u00e3o": [[11, "internationalization"]], "Joins and Relations": [[6, "joins-and-relations"]], "Key features": [[14, "key-features"]], "LDAP": [[13, "ldap"]], "Left outer join": [[6, "left-outer-join"]], "Linguagem de template YATL": [[8, "yatl-template-language"]], "Local de pasta do banco de dados": [[6, "database-folder-location"]], "MSSQL (Microsoft SQL Server)": [[6, "mssql-microsoft-sql-server"]], "Mais sobre envios": [[6, "more-on-uploads"]], "Many to many relation": [[6, "many-to-many-relation"]], "Marca\u00e7\u00e3o de registros": [[6, "tagging-records"]], "Melhoramento": [[2, "upgrading"]], "Migra\u00e7\u00e3o resumo controle": [[6, "migration-control-summary"]], "Migra\u00e7\u00f5es": [[6, "migrations"]], "Mobile development": [[8, "mobile-development"]], "Modelos": [[4, "templates"]], "Multiple Tags objects": [[13, "multiple-tags-objects"]], "Multiple fixtures": [[5, "multiple-fixtures"]], "MySQL": [[6, "mysql"]], "Nota sobre novo DAL e adaptadores": [[6, "note-on-new-dal-and-adapters"]], "O Dashboard": [[3, "the-dashboard"]], "O fixture DAL": [[5, "the-dal-fixture"]], "O fixture flash": [[5, "the-flash-fixture"]], "O grupo Google": [[1, "the-google-group"]], "O objeto `` request``": [[4, "the-request-object"]], "O pool de conex\u00f5es": [[6, "connection-pooling"]], "O que \u00e9 py4web?": [[0, "what-is-py4web"]], "OAuth2 with Discord": [[13, "oauth2-with-discord"]], "OAuth2 with Facebook": [[13, "oauth2-with-facebook"]], "OAuth2 with Google": [[13, "oauth2-with-google"]], "Operadores l\u00f3gicos": [[6, "logical-operators"]], "Op\u00e7\u00e3o `` comando call``": [[2, "call-command-option"]], "Op\u00e7\u00e3o `` comando new_app``": [[2, "new-app-command-option"]], "Op\u00e7\u00e3o `` comando run``": [[2, "run-command-option"]], "Op\u00e7\u00e3o `` comando set_password``": [[2, "set-password-command-option"]], "Op\u00e7\u00e3o `` comando setup``": [[2, "setup-command-option"]], "Op\u00e7\u00e3o `` comando shell``": [[2, "shell-command-option"]], "Op\u00e7\u00e3o `` comando version``": [[2, "version-command-option"]], "Op\u00e7\u00f5es de linha de comando": [[2, "command-line-options"]], "Or\u00e1culo": [[6, "oracle"]], "Os campos de refer\u00eancia": [[14, "reference-fields"]], "Os valores por defeito com `` `` coalesce`` e coalesce_zero``": [[6, "default-values-with-coalesce-and-coalesce-zero"]], "Other validators": [[12, "other-validators"]], "Outros operadores": [[6, "other-operators"]], "Outros par\u00e2metros do construtor DAL": [[6, "other-dal-constructor-parameters"]], "PAM": [[13, "pam"]], "Page layout standard structure": [[8, "page-layout-standard-structure"]], "Palavras-chave reservadas": [[6, "reserved-keywords"]], "Pegadinhas": [[6, "gotchas"]], "Personalizados `` tipos Field``": [[6, "custom-field-types"]], "Plataformas e pr\u00e9-requisitos suportados": [[2, "supported-platforms-and-prerequisites"]], "Plugins de Autentica\u00e7\u00e3o": [[13, "auth-plugins"]], "Pluralizar": [[11, "pluralize"]], "Primeira corrida": [[2, "first-run"]], "Procedimentos de configura\u00e7\u00e3o": [[2, "setup-procedures"]], "Pr\u00e9-requisitos": [[1, "prerequisites"]], "P\u00e1ginas est\u00e1ticas": [[4, "static-web-pages"]], "P\u00e1ginas web din\u00e2micas": [[4, "dynamic-web-pages"]], "Range, set and equality validators": [[12, "range-set-and-equality-validators"]], "Raw SQL": [[6, "raw-sql"]], "Recursivas `` s SELECT``": [[6, "recursive-selects"]], "Recursos": [[1, "resources"]], "Rede": [[14, "grid"]], "Renderizando Rows com represent": [[6, "rendering-rows-using-represent"]], "Representa\u00e7\u00e3o de dados": [[6, "data-representation"]], "RestAPI GET": [[7, "restapi-get"]], "RestAPI policies and actions": [[7, "restapi-policies-and-actions"]], "RestAPI practical examples": [[7, "restapi-practical-examples"]], "Rotas": [[4, "routes"]], "SQLite": [[6, "sqlite"]], "Searching and filtering": [[14, "searching-and-filtering"]], "Selects com cache": [[6, "caching-selects"]], "Sending messages using a background task": [[16, "sending-messages-using-a-background-task"]], "Server-side DOM": [[10, "server-side-dom"]], "Server-side session anywhere": [[5, "server-side-session-anywhere"]], "Server-side session in Redis": [[5, "server-side-session-in-redis"]], "Server-side session in database": [[5, "server-side-session-in-database"]], "Server-side session in memcache": [[5, "server-side-session-in-memcache"]], "Sess\u00e3o no Dashboard": [[3, "login-into-the-dashboard"]], "Sharing sessions": [[5, "sharing-sessions"]], "Simple conversion examples": [[15, "simple-conversion-examples"]], "Sintaxe b\u00e1sica": [[8, "basic-syntax"]], "Sorted options": [[12, "sorted-options"]], "Special installations": [[2, "special-installations"]], "Special type validators": [[12, "special-type-validators"]], "Standard widgets": [[12, "standard-widgets"]], "Strings de conex\u00e3o (o par\u00e2metro uri)": [[6, "connection-strings-the-uri-parameter"]], "Substrings": [[6, "substrings"]], "Supported databases": [[6, "supported-databases"]], "Tabelas pregui\u00e7osos": [[6, "lazy-tables"]], "Table methods": [[6, "table-methods"]], "Template Functions": [[8, "template-functions"]], "Temporiza\u00e7\u00e3o de consultas": [[6, "timing-queries"]], "Text format validators": [[12, "text-format-validators"]], "The Auth fixture": [[5, "the-auth-fixture"]], "The Condition fixture": [[5, "the-condition-fixture"]], "The DAL: a quick tour": [[6, "the-dal-a-quick-tour"]], "The Database Abstraction Layer (DAL)": [[6, "the-database-abstraction-layer-dal"]], "The Discord server": [[1, "the-discord-server"]], "The Form constructor": [[12, "the-form-constructor"]], "The Grid object": [[14, "the-grid-object"]], "The Inject fixture": [[5, "the-inject-fixture"]], "The Q object": [[16, "the-q-object"]], "The RestAPI": [[7, "the-restapi"]], "The RestAPI response": [[7, "the-restapi-response"]], "The Session fixture": [[5, "the-session-fixture"]], "The T object": [[16, "the-t-object"]], "The Template fixture": [[5, "the-template-fixture"]], "The Translator fixture": [[5, "the-translator-fixture"]], "The URLsigner fixture": [[5, "the-urlsigner-fixture"]], "The _scaffold app": [[4, "the-scaffold-app"]], "The scheduler": [[16, "the-scheduler"]], "The sidecar parameter": [[12, "the-sidecar-parameter"]], "Transa\u00e7\u00e3o distribu\u00edda": [[6, "distributed-transaction"]], "Tutoriais e v\u00eddeo": [[1, "tutorials-and-video"]], "Two Factor Authentication": [[13, "two-factor-authentication"]], "Um local de trabalho python moderna": [[1, "a-modern-python-workplace"]], "Um para muitos rela\u00e7\u00e3o": [[6, "one-to-many-relation"]], "Understanding the design": [[2, "understanding-the-design"]], "Usando DAL sem definir tabelas": [[6, "using-dal-without-define-tables"]], "Usando o DAL \u201cstand-alone\u201d": [[6, "using-the-dal-stand-alone"]], "Usando templates": [[14, "using-templates"]], "Usando um seleto para uso de mem\u00f3ria inferior \u00e0 base de iterador": [[6, "using-an-iterator-based-select-for-lower-memory-use"]], "User Impersonation": [[13, "user-impersonation"]], "Using Auth inside actions": [[13, "using-auth-inside-actions"]], "Using Fixtures": [[5, "using-fixtures"]], "Using Inject": [[10, "using-inject"]], "Using callable parameters": [[14, "using-callable-parameters"]], "Using the dashboard app with databases": [[6, "using-the-dashboard-app-with-databases"]], "Validation functions": [[12, "validation-functions"]], "Valida\u00e7\u00e3o de formul\u00e1rio": [[12, "form-validation"]], "WSGI": [[2, "wsgi"]], "Watch for files change": [[4, "watch-for-files-change"]], "Widgets": [[12, "widgets"]], "`` A``": [[10, "a"]], "`` BEAUTIFY``": [[10, "beautify"]], "`` BODY``": [[10, "body"]], "`` Belongs``": [[6, "belongs"]], "`` CAT``": [[10, "cat"]], "`` Comando SELECT``": [[6, "select-command"]], "`` Count``, `` isempty``, `` DELETE``, `` update``": [[6, "count-isempty-delete-update"]], "`` Def \u2026 return``": [[8, "def-return"]], "`` Div``": [[10, "div"]], "`` Drop``": [[6, "drop"]], "`` EM``": [[10, "em"]], "`` Find``, `` exclude``, `` sort``": [[6, "find-exclude-sort"]], "`` Form``": [[10, "form"]], "`` Format``: representa\u00e7\u00e3o da ficha": [[6, "format-record-representation"]], "`` H1``, `` h2``, `` H3``, `` H4``, `` H5``, `` H6``": [[10, "h1-h2-h3-h4-h5-h6"]], "`` HEAD``": [[10, "head"]], "`` HTML``": [[10, "html"]], "`` IMG``": [[10, "img"]], "`` INPUT``": [[10, "input"]], "`` I``": [[10, "i"]], "`` Id``: Notas sobre a chave prim\u00e1ria": [[6, "id-notes-about-the-primary-key"]], "`` If \u2026 elif \u2026 else``": [[8, "if-elif-else"]], "`` Insert``": [[6, "insert"]], "`` LI``": [[10, "li"]], "`` Label``": [[10, "label"]], "`` Like``, `` ilike``, `` regexp``, `` startswith``, `` endswith``, `` contains``, `` upper``, `` lower``": [[6, "like-ilike-regexp-startswith-endswith-contains-upper-lower"]], "`` Lista: `` e `` contains``": [[6, "list-type-and-contains"]], "`` Migrate``, `` fake_migrate``": [[6, "migrate-fake-migrate"]], "`` OL``": [[10, "ol"]], "`` OPTION``": [[10, "option"]], "`` On_define``": [[6, "on-define"]], "`` Orderby``, `` groupby``, `` limitby``, `` distinct``, `` having``, `` orderby_on_limitby``, `` join``, `` left``, `` cache``": [[6, "orderby-groupby-limitby-distinct-having-orderby-on-limitby-join-left-cache"]], "`` PRE``": [[10, "pre"]], "`` P``": [[10, "p"]], "`` Para \u2026 in``": [[8, "for-in"]], "`` Primarykey``: Suporte para tabelas legadas": [[6, "primarykey-support-for-legacy-tables"]], "`` Query``, `` Set``, `` Rows``": [[6, "query-set-rows"]], "`` Redefine``": [[6, "redefine"]], "`` Rname``: nome real": [[6, "rname-real-name"]], "`` SCRIPT``": [[10, "script"]], "`` SELECT``": [[10, "select"]], "`` SPAN``": [[10, "span"]], "`` STYLE``": [[10, "style"]], "`` Sequence_name``": [[6, "sequence-name"]], "`` Sum``, `` avg``, `` min``, `` `` max`` e len``": [[6, "sum-avg-min-max-and-len"]], "`` TABLE``, `` TR``, `` TD``": [[10, "table-tr-td"]], "`` TAG``": [[10, "tag"]], "`` TBODY``": [[10, "tbody"]], "`` TEXTAREA``": [[10, "textarea"]], "`` THEAD``": [[10, "thead"]], "`` TH``": [[10, "th"]], "`` TITLE``": [[10, "title"]], "`` TT``": [[10, "tt"]], "`` Table_class``": [[6, "table-class"]], "`` Tentar \u2026 exceto \u2026 else \u2026 finally``": [[8, "try-except-else-finally"]], "`` Trigger_name``": [[6, "trigger-name"]], "`` UL``": [[10, "ul"]], "`` URL``": [[10, "url"]], "`` Update_or_insert``": [[6, "update-or-insert"]], "`` Update_record``": [[6, "update-record"]], "`` Validate_and_insert``, `` validate_and_update``": [[6, "validate-and-insert-validate-and-update"]], "`` While``": [[8, "while"]], "`` XML``": [[10, "xml"]], "`` Year``, `` month``, `` day``, `` hour``, `` minutes``, `` seconds``": [[6, "year-month-day-hour-minutes-seconds"]], "`` _Lastsql``": [[6, "lastsql"]], "`` `` As_dict`` e as_list``": [[6, "as-dict-and-as-list"]], "`` `` Filter_in`` e filter_out``": [[6, "filter-in-and-filter-out"]], "`` `` First`` e last``": [[6, "first-and-last"]], "`` `` Plural`` e singular``": [[6, "plural-and-singular"]], "`` `` commit`` e rollback``": [[6, "commit-and-rollback"]], "`` case``": [[6, "case"]], "`` executesql``": [[6, "executesql"]], "`` polymodel``": [[6, "polymodel"]], "assinatura define_table": [[6, "define-table-signature"]], "block and super": [[8, "block-and-super"]], "cache, em cache": [[6, "cache-cacheable"]], "children": [[10, "children"]], "distinto": [[6, "distinct"]], "extend and include": [[8, "extend-and-include"]], "filtros comuns": [[6, "common-filters"]], "find": [[10, "find"]], "groupby, tendo": [[6, "groupby-having"]], "htmx": [[16, "htmx"]], "htmx usage in Form": [[16, "htmx-usage-in-form"]], "htmx usage in Grid": [[16, "htmx-usage-in-grid"]], "juntar-se, deixou": [[6, "join-left"]], "limitby": [[6, "limitby"]], "modifica\u00e7\u00e3o da tabela e campo em tempo de execu\u00e7\u00e3o": [[6, "run-time-field-and-table-modification"]], "ordenar por": [[6, "orderby"]], "orderby_on_limitby": [[6, "orderby-on-limitby"]], "py4web and asyncio": [[16, "py4web-and-asyncio"]], "py4web model": [[6, "py4web-model"]], "py4web: o manual de refer\u00eancia": [[17, "py4web-the-reference-manual"]], "retornos de chamada no registro de inser\u00e7\u00e3o, exclus\u00e3o e atualiza\u00e7\u00e3o": [[6, "callbacks-on-record-insert-delete-and-update"]], "string.format": [[16, "string-format"]], "two_factor_required": [[13, "two-factor-required"]], "two_factor_send": [[13, "two-factor-send"]], "two_factor_tries": [[13, "two-factor-tries"]], "utils.js": [[16, "utils-js"]], "versionamento recorde": [[6, "record-versioning"]], "\u00cdndices": [[6, "indexes"]], "\u00cdndices e tabelas": [[17, "indices-and-tables"]], "\u201cAccessing OS files\u201d example": [[15, "accessing-os-files-example"]], "\u201cForm and flash\u201d example": [[15, "form-and-flash-example"]], "\u201cHello world\u201d example": [[15, "hello-world-example"]], "\u201cRedirect with variables\u201d example": [[15, "redirect-with-variables-example"]], "\u201cReturn calling methods\u201d example": [[15, "return-calling-methods-example"]], "\u201cReturning args\u201d example": [[15, "returning-args-example"]], "\u201cReturning variables\u201d example": [[15, "returning-variables-example"]], "\u201cSetting up a counter\u201d example": [[15, "setting-up-a-counter-example"]], "\u201cView\u201d example": [[15, "view-example"]], "\u201cauth\u201d example": [[15, "auth-example"]], "\u201cgrid\u201d example": [[15, "grid-example"]]}, "docnames": ["chapter-01", "chapter-02", "chapter-03", "chapter-04", "chapter-05", "chapter-06", "chapter-07", "chapter-08", "chapter-09", "chapter-1", "chapter-10", "chapter-11", "chapter-12", "chapter-13", "chapter-14", "chapter-15", "chapter-16", "index"], "envversion": {"sphinx": 61, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2}, "filenames": ["chapter-01.rst", "chapter-02.rst", "chapter-03.rst", "chapter-04.rst", "chapter-05.rst", "chapter-06.rst", "chapter-07.rst", "chapter-08.rst", "chapter-09.rst", "chapter-1.rst", "chapter-10.rst", "chapter-11.rst", "chapter-12.rst", "chapter-13.rst", "chapter-14.rst", "chapter-15.rst", "chapter-16.rst", "index.rst"], "indexentries": {}, "objects": {}, "objnames": {}, "objtypes": {}, "terms": {"0": [2, 3, 5, 6, 7, 8, 10, 11, 12, 13, 14, 15, 16], "00": 7, "01": 7, "02": [6, 12], "03": [2, 6, 7], "04": 2, "04t07": 7, "05": 7, "08": 12, "0x4e86": 12, "0x7fa533ff7640": 10, "1": [2, 3, 5, 6, 7, 8, 10, 11, 12, 14, 15, 16], "10": [2, 6, 7, 8, 10, 11, 12, 13, 16], "100": [2, 6, 7, 8, 12, 16], "1000": [5, 6, 12, 16], "1000ms": 16, "100px": 16, "1024": 12, "1048576": 12, "10px": 14, "11": [6, 12], "111111": 16, "11211": 5, "12": 12, "120": 6, "123": [10, 12], "123218": 7, "123456": 12, "125": 6, "127": [2, 3, 5, 12, 14], "13": [6, 12], "132635": 7, "14": [8, 12, 14], "15": [6, 12, 13, 14], "16": 12, "168": 12, "169": 12, "16px": 8, "172": [6, 12], "174": 6, "178974": 7, "19": [6, 7, 12], "192": [6, 12], "1963": 12, "198": 6, "199": 12, "19t05": 7, "1e100": 6, "1kb": 12, "1l": 6, "1mb": 12, "1pkogiy59xj8co8": 8, "2": [5, 6, 7, 8, 10, 11, 12, 13, 15, 16], "20": [2, 7, 11, 12], "200": [7, 12, 15, 16], "2001": 12, "2002": 12, "2005": 6, "2007": 0, "2008": 12, "2009": 12, "200ms": 16, "200x200": 12, "2010": 6, "2012": 6, "2013": 6, "2015": 0, "2018": 6, "2019": 7, "201988": 7, "2020": 1, "20201112": 3, "2021": 7, "2022": 5, "207": 6, "217": 6, "22": 13, "227": 6, "239": 6, "2396": 12, "24": 12, "254": 12, "255": 12, "256": 6, "2616": 12, "28": 12, "2em": 16, "2px": 16, "3": [0, 2, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "30": [2, 6, 8, 12], "301": 15, "309903": 7, "31": [6, 7, 12], "32": [6, 12], "322494": 7, "33": [6, 12], "34": 7, "3490": 12, "3492": 12, "35": 6, "355181": 7, "3600": [5, 6], "366288": 7, "38": 7, "3em": 16, "4": [2, 5, 6, 7, 8, 12, 14], "40": [2, 10, 16], "400": [5, 15], "404": [5, 13], "405515": 7, "43": 6, "45": [8, 12], "451907": 7, "453020": 7, "456": 12, "466030": 7, "4e": 12, "5": [5, 6, 7, 8, 11, 12, 13, 14, 16], "50": [2, 7], "500": 16, "500ms": 16, "512": 6, "53": 12, "54": 8, "559918": 7, "58": 8, "59": 12, "6": [5, 6, 7, 12, 13, 15, 16], "60": [5, 6], "63": [6, 12], "6379": 5, "64": [6, 8, 16], "65": 6, "6to4": 12, "7": [2, 7, 8, 12, 15], "70": 7, "74": 6, "75": 7, "768": 6, "8": [2, 6, 7, 12], "80": [7, 12], "8000": [2, 3, 4, 12, 14], "86": 12, "8601": 7, "8em": [8, 16], "9": [6, 7, 12, 14, 15], "90": [6, 7], "91": 6, "95": 6, "97": 6, "974953": 7, "99": 6, "A": [1, 2, 4, 5, 7, 8, 11, 13, 14, 15, 16, 17], "AS": 6, "Ao": [4, 6, 8, 14], "As": [3, 4, 5, 6, 7, 8, 10, 11, 12, 13, 14, 16], "COMO": 6, "Com": 6, "Comando": 17, "Como": [6, 17], "Da": 6, "De": [0, 1, 4, 6, 17], "Do": [6, 8, 12, 14, 17], "E": [1, 6, 13], "Ela": [1, 6, 8], "Ele": [2, 3, 5, 6, 10], "Eles": [0, 4, 6], "Em": [2, 5, 6, 8, 10], "Essas": 0, "Esse": 4, "Esses": [5, 6], "Esta": [0, 1, 2, 4, 6], "Estas": 10, "Este": [2, 6, 8, 10, 14, 15], "Estes": 6, "For": [1, 2, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "Fora": 0, "H\u00e1": [1, 5, 6, 14], "Isso": [2, 4, 6], "Isto": [0, 2, 3, 4, 5, 6, 10, 14], "Mas": [1, 4, 6], "NO": 6, "Na": 0, "Nem": 6, "No": [2, 5, 6, 8, 14], "Nos": 6, "N\u00f3s": [0, 1, 5], "O": [2, 8, 10, 12, 13, 17], "OU": 14, "Os": [0, 3, 4, 8, 10, 13, 17], "Por": [2, 3, 4, 5, 6, 10], "SE": 6, "Se": [1, 2, 3, 4, 6, 8, 10, 14], "Seu": 6, "Tamb\u00e9m": 6, "Um": 5, "Uma": [4, 6, 8, 10], "_": [2, 5, 12, 16], "__": [1, 2, 4], "__dict__": 5, "__file__": [5, 7, 14], "__init": 2, "__init__": [2, 4, 5, 6, 7, 14, 15, 16], "__prerequisite__": 5, "__prerequisites__": 5, "__str__": [5, 8, 10], "_action": [10, 14], "_adapt": 6, "_after_delet": 6, "_after_insert": 6, "_after_updat": 6, "_alt": 10, "_and": 12, "_antes_": 6, "_autocomplet": 16, "_autocomplete_search_fields": 16, "_before_delet": 6, "_before_insert": 6, "_before_updat": 6, "_bgcolor": 10, "_c": 10, "_checked": 10, "_class": [5, 10, 12, 16], "_cols": 10, "_common_filt": 6, "_count": 6, "_dashboard": [2, 3], "_dat": 10, "_db": 6, "_dbnam": 6, "_default": [2, 4], "_delet": 6, "_disabled": 10, "_documentation": [1, 3], "_enable_record_versioning": 6, "_extr": 6, "_format": 6, "_href": [5, 8, 10, 12, 14], "_hx": 16, "_id": [6, 10, 12, 16], "_insert": 6, "_listify": 6, "_method": [10, 14], "_nam": [6, 10, 12, 14, 16], "_next_url": 13, "_nonreserved": 6, "_onclick": 12, "_placehold": [12, 16], "_rows": 10, "_scaffold": [5, 8, 10, 12, 13, 14, 15, 17], "_search": 16, "_select": 6, "_selected": 10, "_sesson": 5, "_src": 10, "_style": [12, 16], "_tabl": [6, 12, 16], "_tablenam": 6, "_tag_": 13, "_timings": 6, "_titl": [12, 16], "_type": [6, 10, 12, 14, 16], "_u": 10, "_updat": 6, "_ur": 6, "_valu": [10, 12, 14, 16], "_xmlns": 10, "aaabaaeaaqeaaaeaiaawaaaafgaaacgaaaabaaaaagaaaaeaiaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaapaaaaa": 8, "ab": [10, 12], "aba": 3, "abaix": 6, "abas": 3, "abbreviated": 12, "abc": [10, 12], "abert": [1, 3, 6], "ability": 15, "able": [5, 6, 12], "abort": [4, 6], "about": [6, 7, 13, 14, 15, 16, 17], "abov": [4, 5, 6, 7, 8, 12, 14, 16], "abracadabr": 2, "abrir": 2, "absent": 2, "absolut": [2, 6, 15], "abspath": 4, "abstraction": [5, 15, 17], "abstra\u00e7\u00e3": 6, "acab": 6, "accdesc": 6, "accept": [4, 5, 12, 16], "acceptanc": 12, "accepted": [1, 2, 6, 12, 15, 16], "accepting": 10, "accepts": 12, "access": [2, 4, 5, 6, 10, 13, 15, 16], "accessed": [6, 10, 12], "accessibl": 4, "accessing": [5, 6], "accnum": 6, "accomplish": [5, 6], "accomplished": [6, 13, 15], "according": 8, "accordingly": 8, "account": 6, "acctype": 6, "aceit": [6, 11, 12], "aceler": 6, "acert": 2, "acess": [0, 2, 4, 5, 6], "acess\u00f3ri": 4, "achieved": [5, 15], "acim": [6, 7, 8, 13], "acion": 6, "acknowledgments": 17, "acompanh": 6, "acontec": 6, "acord": 6, "acrescent": 6, "across": [6, 8], "act": 6, "action": [4, 5, 6, 7, 10, 12, 13, 14, 15, 16], "action_button": 14, "action_token": [5, 13], "actions": [4, 5, 6, 14, 15, 17], "activ": [6, 13], "activat": [2, 13], "activated": 13, "activating": 2, "activiti": 6, "acts": 12, "actu": 6, "actual": [5, 6, 8, 13, 14], "actualiz": 6, "actually": [6, 8], "ac\u00e7\u00e3": [4, 5, 6, 7], "ad": 13, "adapt": 13, "adapter_args": 6, "adapters": [6, 16], "add": [1, 2, 4, 5, 6, 7, 8, 10, 11, 12, 13, 14, 15, 16], "added": [0, 2, 5, 12, 13, 16], "adding": [6, 12, 14], "addition": [6, 8], "additional": [4, 5, 6, 7, 8, 12, 14], "additional_cl": 14, "additional_styl": 14, "address": [2, 12, 13], "adds": 16, "adi": 6, "adiant": 13, "adicion": [2, 5, 11, 12, 13, 14], "adicional": [2, 5, 6], "adi\u00e7\u00e3": 6, "admin": 15, "administr": [0, 6], "administrativ": 2, "administrator": 2, "adquir": 6, "advanc": [2, 13, 14], "advanced": [14, 17], "advantag": [2, 6, 8, 16], "advisabl": 6, "advised": 14, "affecting": 6, "after": [5, 6, 8, 12, 13, 14, 16], "after_connection": 6, "after_delet": 6, "after_insert": 6, "after_updat": 6, "aftermath": 6, "again": [2, 4, 5, 6, 12, 16], "against": [6, 7, 10, 12, 14], "age": 6, "aggregat": 6, "agir": [6, 10], "agn\u00f3st": 4, "agor": [2, 4, 5, 6, 8], "agrad": 10, "agreg": 6, "aid": 6, "aims": 0, "aind": [2, 6, 13], "ajax": [8, 14, 16], "ajud": [0, 2, 4, 6, 15, 17], "ajust": 6, "aka": 1, "alcanc": 6, "alchemy": 6, "aleat\u00f3r": 6, "alert": [5, 8, 10, 12, 15], "alerts": [5, 8, 15], "alex": 6, "alfar": [0, 1], "alg": 12, "algo": [5, 6, 7, 8], "algorithm": [5, 12], "algum": [4, 6, 10], "alguns": [0, 2, 4, 5, 6, 7, 8, 10], "ali": [6, 12], "aliment": 6, "aliv": 16, "all": [0, 1, 2, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "allocated": 12, "allow": [6, 7, 8, 10, 12, 13, 14, 16], "allowed": [6, 7, 12, 13], "allowed_actions": 13, "allowed_attribut": 10, "allowed_overrid": 12, "allowed_patterns": 7, "allowed_schem": 12, "allowing": [1, 12, 16], "allows": [2, 3, 4, 5, 6, 7, 8, 12, 13, 14, 16], "almost": 5, "along": [2, 4, 10, 12, 16], "alphabetically": 12, "alphanumeric": 12, "already": [2, 4, 5, 10, 12, 13, 14], "also": [0, 1, 2, 4, 5, 6, 8, 10, 12, 13, 14, 15, 16], "alt": 10, "alter": [0, 2, 4, 5, 6, 11], "altering": 6, "altern": 6, "alternat": [5, 16], "alternativ": [2, 6, 8, 12], "although": [2, 8, 12], "alvo": 6, "always": [0, 2, 4, 5, 6, 12, 16], "al\u00e9m": [4, 6, 14], "am": [12, 16], "amazon": 6, "ambas": 6, "ambient": 2, "ambigu": [4, 6], "ambos": [4, 5, 6], "among": [6, 12], "amount": 6, "ampli": 1, "an": [0, 1, 2, 3, 5, 6, 8, 10, 12, 13, 14, 15, 16, 17], "analis": [4, 6, 11], "analogy": 15, "ancestor": 10, "anchor": 16, "and": [0, 1, 2, 3, 4, 5, 10, 17], "andaim": 4, "andrew": 1, "anex": 6, "angle": 8, "angul": 16, "angularjs": 0, "aninh": [6, 10], "anonymous": [6, 8, 12], "anoth": [4, 5, 6, 8, 12, 13], "anotherpath": 5, "ansi": 6, "answer": 1, "anteced": 4, "anterior": [2, 6], "antes": [1, 6, 8, 10, 13, 14], "antig": 15, "any": [2, 3, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "anyhow": 2, "anyobj": 6, "anything": 4, "anyway": 6, "anywher": [8, 15], "an\u00e1lis": 6, "apag": 12, "aparec": 6, "aparent": 6, "apen": [2, 5, 6, 7], "api": [0, 6, 7, 10, 12, 13, 16], "api_key": 16, "api_version": 7, "apis": [0, 6, 13, 15], "aplic": [0, 2, 3, 4, 5, 14, 15], "apoi": 6, "apont": 6, "app": [0, 1, 3, 5, 7, 8, 10, 11, 12, 13, 14, 15, 16, 17], "app1": 5, "app1_session": 5, "app2": 5, "app_fold": 15, "app_nam": [2, 4, 5, 6], "app_watch_handl": 4, "appadmin": [0, 6], "appe": [6, 12], "append": [6, 10, 12, 14, 16], "append_id": 14, "appended": [5, 6], "apple": 12, "appli": [6, 12, 16], "application": [2, 5, 6, 8, 12, 13, 15, 16], "applications": [0, 2, 3, 4, 6, 12, 13, 14], "applied": [5, 6, 12, 14, 16], "apply": [0, 5, 12, 13, 14], "applying": [6, 14], "appnam": [2, 5, 13, 15], "appname_session": 5, "approach": [6, 15], "appropriat": [6, 12], "appropriately": 6, "approv": 13, "apps": [0, 1, 2, 3, 4, 5, 6, 8, 13, 15], "apps_fold": 2, "aprend": 1, "apresent": 8, "apropri": 6, "aproxim": 6, "apt": 13, "ap\u00f3s": [2, 6, 14], "aqu": [2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13, 14], "aquel": [6, 13], "arbitrary": [4, 13], "arbitr\u00e1ri": 6, "archive_db": 6, "archive_nam": 6, "are": [0, 1, 2, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "aren": 6, "args": [1, 2, 6], "argument": [2, 4, 5, 6, 8, 10, 12, 13, 16], "arguments": [2, 5, 6, 8, 10, 12, 13, 15, 16], "arithmetic": 12, "armazen": [0, 2, 5, 6, 10], "around": [1, 15], "arquiv": [0, 2, 3, 4, 5, 6, 13, 17], "arrang": 12, "array": 16, "arriv": [0, 6], "as_ordered_dict": 6, "asci": 12, "asid": 16, "ask": 16, "asked": 2, "asking": 5, "aspas": 6, "assert": [6, 16], "assets": 2, "assigned": [6, 12, 13, 15], "assigning": [15, 16], "assignment": 8, "assigns": 16, "assim": [6, 8], "assinatur": [4, 5], "assist": 4, "assistent": 10, "assoc": [6, 11], "associated": [6, 12, 13], "assum": [2, 5, 6, 7, 11, 12, 16], "assumed": 15, "assuming": [5, 6], "async": 16, "asynchronously": 16, "asynci": 17, "at": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "atend": [2, 6], "ativ": [2, 6], "atrav\u00e9s": [6, 8, 10, 13], "atribut": [5, 10], "atribu\u00edd": 6, "attached": [6, 13], "attaching": 15, "attacks": [5, 10], "attempted": 12, "attempting": 6, "attempts": [6, 13], "attention": 6, "attribut": [4, 5, 6, 10, 12, 14, 15, 16], "attributes_plugin": 16, "attributespluginhtmx": 16, "attrs": [12, 14, 16], "atual": [2, 6], "atualiz": [2, 17], "aug": 12, "august": 12, "aul": 14, "aut": 10, "autentic": 6, "auth": [0, 2, 4, 6, 8, 10, 16, 17], "auth_group": 13, "auth_groups": 13, "auth_plugins": 13, "auth_us": [5, 6, 13, 16], "auth_user_tag_groups": [6, 13], "auth_user_tagged_groups": 13, "authenticat": 13, "authenticated": [5, 6], "authentication": [5, 14, 17], "authoriz": [6, 7], "authorization": [5, 6, 17], "authorized": 13, "auto_import": 6, "auto_process": [14, 16], "autocomplete_query": 16, "autodelet": 6, "autogenerated": 6, "automat": [2, 4, 6, 8, 10, 13, 14], "automatic": [4, 6, 8, 15], "automatically": [2, 3, 4, 5, 6, 12, 13, 14, 15, 16], "autoriz": 6, "auxili": [5, 6, 8, 10], "availabl": [1, 2, 6, 8, 10, 13, 15, 16], "avali": [6, 8], "avanc": 17, "avis": [5, 6, 13], "avoid": [1, 2, 5, 6, 12], "avoided": 8, "avoiding": 5, "avoids": 6, "awar": 6, "awesom": [8, 14], "axel": 0, "axolotl": 0, "azul": 4, "a\u00e7\u00e3": [4, 5, 6, 13, 17], "a\u00e7\u00f5": 5, "a\u00e7\u00fac": 5, "b": [5, 6, 8, 10, 12, 15, 16], "back": [5, 6, 12], "backend": 6, "backends": 6, "background": [2, 4, 12, 17], "backported": 6, "backslash": 4, "backup": [2, 6, 12], "backward": 12, "backwards": [0, 12], "bad_days": 6, "bails": 6, "banan": 12, "banc": [0, 1, 3, 4, 5, 13], "bar": [8, 14], "barc": 6, "barr": 4, "barri": 0, "bas": [0, 2, 4, 8, 14, 16], "base64": [6, 8, 16], "base_dn": 13, "baseadapt": 6, "based": [0, 2, 3, 4, 5, 7, 8, 12, 13, 14, 15, 16], "bash": 2, "basic": [2, 5, 17], "basically": 16, "bast": 2, "bat": 2, "batman": [7, 12, 14], "battl": 0, "be": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "beasley": 0, "becaus": [0, 2, 4, 5, 6, 8, 10, 12, 14, 16], "becom": [12, 16], "bed": 11, "been": [0, 2, 5, 6, 8, 12], "befor": [2, 5, 6, 8, 12, 13, 14], "before_delet": 6, "before_insert": 6, "before_updat": 6, "begin": [12, 14], "beginners": 2, "beginning": [8, 12, 13], "behavior": [5, 6, 12, 15, 16], "behaviour": [2, 6, 14], "being": [5, 6, 7, 8, 12, 16], "believ": [0, 5], "belong": [13, 15], "belonging": 6, "belongs": 13, "below": [5, 6, 7, 12, 14], "bem": [0, 4, 5, 6, 13], "benefits": 16, "benef\u00edci": 6, "best": [2, 5, 6], "bett": [0, 1, 2, 4, 6, 14, 15, 16], "between": [5, 10, 12, 15], "beyond": 12, "bgcolor": 10, "bibliotec": [0, 4, 11], "big": 15, "bigint": 6, "bigint_id": 6, "bilhet": [0, 3, 6], "bilh\u00e9t": 0, "bin": [1, 2], "binari": 2, "binary": 6, "bind": 16, "bin\u00e1ri": 6, "birthplac": 6, "bit": 12, "bitbucket": 1, "black": [8, 12], "blank": [12, 14], "blanks": 12, "blink": 16, "blob": [1, 6], "bloc": [8, 10], "block": [13, 16], "blockquot": 10, "blocks": 8, "blog": [1, 6, 10], "blog_post": 6, "bloqu": 13, "blu": [4, 6, 12, 15], "bmp": 12, "boas": 2, "boat": 6, "bob": 6, "body": [4, 8, 13, 14, 16], "boilerplat": 5, "bold": 10, "bom": 2, "bonit": 6, "book": 6, "boolean": [6, 14], "booleans": 6, "boost": [6, 8], "bootstrap": 14, "bord": 16, "botar": 0, "both": [1, 2, 5, 6, 8, 12, 15], "bottl": [0, 4, 5, 8, 15], "bottle_app": 2, "bottleneck": 16, "bottlepy": [4, 5], "bottom": 12, "bottons": 14, "bot\u00e3": 3, "bot\u00f5": [3, 17], "boundari": 12, "boundary": 12, "box": [0, 6, 12], "br": [8, 10], "bracket": 8, "brackets": [8, 12], "branch": [1, 2], "break": [2, 6], "breaking": 6, "breaks": 12, "breez": 1, "brev": 4, "briefly": 2, "broken": [0, 6, 12], "brows": [1, 2, 3, 5, 7, 8, 14, 16], "browsers": 16, "browsing": 3, "bruc": [7, 14], "brut": 6, "bsd": 1, "buff": 6, "bug": 6, "bugs": 1, "build": [1, 2, 4, 5, 10, 14, 16], "building": [4, 12, 16], "built": [0, 1, 4, 6, 8, 12, 16, 17], "bulk_insert": 6, "bulletproof": 6, "bulm": [12, 14, 16], "bunch": 2, "busc": [3, 6, 14], "busing": 16, "but": [0, 1, 2, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "button": [3, 4, 5, 12, 14, 16], "buttons": [10, 12, 14, 16], "by": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "bypass": [12, 13], "bypassed": 13, "byte": 12, "bytecod": 8, "bytes": 6, "b\u00e1sic": [0, 1, 6, 17], "c": [1, 2, 3, 5, 6, 8, 10, 12, 15], "ca": 12, "cabec": [10, 14], "cabe\u00e7alh": [4, 10], "cach": [0, 2, 4, 5, 12], "cache_db_select": 6, "cacheabl": 6, "cached": 5, "cache\u00e1vel": 6, "caching": [6, 17], "cachorr": 11, "cad": [2, 4, 5, 8, 11, 14], "caiu": 6, "caix": [0, 6, 10], "calcul": 6, "calend": 14, "call": [0, 5, 6, 8, 12, 13, 16], "callabl": [10, 12], "callback": [6, 12, 13, 16], "callback_url": 13, "called": [1, 2, 5, 6, 7, 8, 10, 12, 14, 15, 16], "calling": [5, 6, 8], "calls": [2, 6, 8, 16], "cam": [6, 11], "caminh": [2, 4, 6, 14], "camp": [5, 7, 10, 12, 17], "can": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13, 14, 15, 16], "cancel": [12, 16], "cancel_attrs": 16, "cannot": [2, 5, 6, 8, 12, 16], "capabiliti": [14, 16], "capac": 0, "capaz": [1, 2], "capitaliz": 16, "captur": 16, "cap\u00edtul": [2, 4, 5, 15], "car": 6, "caract": [6, 10], "caracter": 4, "caracter\u00edst": 17, "card": 6, "careful": [5, 6, 8, 15, 16], "carg": 6, "carl": 6, "carreg": [0, 6], "carroll": 0, "carry": 15, "cart": 5, "car\u00e1ct": [4, 6], "cas": [0, 1, 2, 3, 4, 5, 8, 10, 12, 13, 14, 15, 16], "cascading": 6, "cascat": 6, "case_sensitiv": 6, "cassi": 0, "caus": [6, 12], "caveat": [6, 8, 15], "caveats": 17, "cd": 2, "cdnjs": [8, 14], "celery": 17, "cent": [5, 6, 8], "century": 12, "ceo": [7, 14], "cerc": 6, "cert": [1, 2, 6, 14], "certain": [6, 8, 12, 14], "certez": 6, "certificat": 2, "certifiqu": [6, 11], "cf": 4, "cgi": 12, "cha": 6, "challeng": 13, "cham": [2, 4, 5, 7, 8, 11, 14], "chang": [1, 2, 3, 5, 6, 7, 8, 12, 13, 14, 15, 16, 17], "change_email": 13, "change_password": [8, 13], "changed": [2, 3, 4, 5, 6, 8, 12, 15, 16], "changed_fil": 4, "changing": 6, "channel": 1, "chapt": [3, 4, 5, 6, 8, 10, 12, 13, 14], "chapters": [1, 5], "char": 6, "charact": [6, 12], "characters": [6, 12], "charg": [2, 15], "chars": 13, "chat": 2, "chats": 1, "chav": [4, 8, 10, 11, 14], "chec": 11, "checbox": 14, "check": [3, 4, 5, 6, 12, 13, 14, 16], "check_": 16, "check_reserved": 6, "checkbox": [8, 10, 17], "checkboxwidget": 12, "checked": [10, 12], "checking": [1, 12, 13, 15], "checks": [2, 6, 8, 12, 13], "cherry": 12, "chicag": 6, "children": 14, "choic": [1, 12, 14], "choos": [6, 12, 13], "choosen": 6, "chrom": [3, 16], "cient": 6, "cinc": 6, "circul": 6, "circumstanc": 5, "cit": [6, 10, 12], "cit0801": 7, "cit0802": 7, "cit1601": 16, "clar": 6, "clark": [7, 14], "clash": 12, "class": [5, 6, 8, 10, 12, 13, 15, 16], "class_inner_exceptions": 16, "class_styl": 14, "classific": [6, 14], "claud": 6, "claus": 6, "cle": 12, "clean": [5, 10], "cleanup": 0, "clearly": 16, "clev": 12, "cli": [1, 2], "clic": 14, "click": [3, 10, 12, 14, 16], "clickabl": 14, "clicked": [14, 16], "clicks": [6, 16], "client": [0, 7, 12, 13, 16], "client_id": 13, "client_ip": 5, "client_secret": 13, "clients": 5, "clientsid": 16, "cliqu": [3, 14], "clock": 12, "clon": [2, 4, 6, 16], "cloned": 2, "clos": [6, 10], "closed": [6, 8], "closing": [5, 6], "cloudflar": [8, 14], "cl\u00e1usul": [6, 8], "cmd": 2, "cn": 13, "co": [6, 12], "coa": 6, "cod": [1, 2, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "codific": 6, "coding": 1, "cois": 6, "colegial": 13, "collapsibl": 10, "collection": [0, 15], "collections": 2, "collects": 2, "colnam": 6, "coloc": 17, "colon": 8, "color": [4, 6, 8, 10, 12, 16], "colors": [4, 6], "cols": 10, "colspan": 10, "column": [6, 14], "columns": [6, 17], "colun": [6, 14], "comand": 6, "comando": [3, 4, 6, 10, 17], "combin": [4, 5, 10, 14], "combined": [5, 6, 12], "come": [0, 5], "comec": [1, 2, 4, 6], "comes": [0, 5, 8, 12, 13, 14, 15, 16], "comet": 6, "coming": 5, "comm": [2, 16], "command": [2, 4, 6, 8], "commands": [2, 4, 6, 8, 10], "comment": [6, 10], "commit": [5, 7, 14, 16], "commits": [5, 6], "committed": [6, 15], "common": [2, 4, 5, 8, 12, 13, 15, 16], "common_filt": 6, "common_filters": 6, "commonality": 8, "communicat": 5, "communication": 6, "communications": 5, "community": [0, 6], "compact": 6, "company": 14, "compar": [6, 15], "compared": 0, "comparison": 12, "compartilh": [5, 6], "compat": 6, "compatibility": 12, "compatibl": [0, 1, 10, 12], "competitor": 0, "compil": [4, 8, 10, 12], "compilation": 8, "compiled": [4, 8, 10, 12], "compiled_css": 4, "compiling": 8, "complet": [0, 2, 6, 10, 12, 14, 16], "completed": [0, 6], "completely": [6, 8, 13], "complex": [1, 2, 4, 5, 6, 8, 10, 13, 15, 16], "complexiti": 16, "complexity": 16, "compliant": 16, "complicated": 5, "component": [0, 4, 5, 8, 10, 12, 13, 16], "component_1": 16, "components": [0, 3, 10, 12, 16], "comport": [4, 6, 10, 14], "compos": 2, "composing": 5, "compost": [6, 10], "compreend": [1, 14], "compressed": 4, "comprim": 3, "compriment": 6, "compris": 3, "compromet": [4, 6], "compromis": 0, "comput": 1, "computed": 17, "computing": 16, "comp\u00f5": 6, "comum": [5, 6], "comunic": 6, "comuns": 3, "concaten": 6, "concatenat": 10, "concatenating": 10, "conceived": 6, "concept": [0, 13], "conch": 2, "concorrent": 0, "concurrency": [6, 16], "concurrent": 16, "concurrently": [2, 12, 16], "cond": 5, "condicion": 8, "condicional": 6, "condition": [6, 12, 13, 17], "conditions": [6, 12], "condi\u00e7\u00e3": 6, "condi\u00e7\u00f5": 6, "conect": [6, 13], "conex\u00e3": 4, "conf": 6, "confiabil": 1, "config": [2, 4], "configur": [3, 13, 14, 15, 16, 17], "configuration": 1, "configurations": 2, "configured": [5, 12, 15], "confirm": [2, 12, 14], "confirmation": 16, "confirmations": 16, "confirms": 13, "conflicts": 6, "conflit": [0, 2, 4, 6], "conform": [6, 13], "confund": 6, "confus": 6, "conhec": [1, 6], "conjunt": [6, 10, 11, 14], "conn": 5, "connect": [3, 6], "connecting": 6, "connection": [5, 6, 12], "connectionpool": 6, "connections": [5, 6, 15], "cons": 6, "conseg": 6, "consegu": 6, "consequenc": [6, 12, 16], "consequently": 12, "consid": [5, 8, 10, 12, 14, 16], "consider": [6, 8, 10], "considered": [5, 6, 8, 15], "consist": [6, 15], "consistency": 8, "consistent": 5, "consists": [6, 14], "consol": [2, 10, 13, 16], "constant": 12, "constraining": 15, "constru": [6, 10, 14], "constructing": 6, "construction": 4, "constructor": [6, 13, 17], "constructors": [6, 12], "construtor": [5, 10, 12, 17], "constru\u00e7\u00e3": [6, 10, 14], "constru\u00edd": [6, 14], "constr\u00f3": 6, "consult": [1, 7, 13, 14], "consulta1": 6, "cont": [2, 5, 10, 11, 13], "contador": [5, 6], "contag": 6, "contain": [2, 4, 5, 6, 8, 10, 12, 13, 16], "contained": [10, 12, 14], "containing": [0, 2, 5, 12, 13, 14, 16], "contains": [3, 5, 7, 8, 11, 12, 14, 15, 16], "contect": 8, "contenh": 5, "content": [2, 4, 5, 6, 8, 10, 12, 14, 15, 16], "content_typ": 16, "contents": [8, 10, 16], "context": [3, 5, 6, 8], "contextlib": 6, "contexts": 5, "conte\u00fad": [4, 6, 10], "continu": [0, 6, 8, 16], "contr": 6, "contribu": 17, "contributed": 0, "control": [2, 8, 12, 13, 14, 16], "controll": [5, 6, 8, 10, 12, 13, 14, 15, 16], "controllers": [4, 6, 8, 10, 12, 15, 16], "controls": 12, "contr\u00e1ri": [0, 4, 6, 8], "cont\u00e9m": [2, 4, 5, 6], "cont\u00eain": 6, "cont\u00eam": [6, 11], "convenienc": 5, "convenient": [6, 17], "convention": [8, 12, 15], "conventions": [4, 6], "conven\u00e7\u00e3": 4, "conversion": [12, 17], "convers\u00e3": 6, "convert": [4, 6, 10], "converted": [1, 6, 12], "converting": 6, "converts": 12, "cooki": [0, 4, 6, 12, 16], "copi": 2, "copied": 2, "copy": [1, 2, 3, 4, 6, 14], "copyfileobj": 6, "copying": [2, 8, 10, 17], "cor": [1, 2, 4, 5], "cord": [4, 6, 11], "corey": 1, "corn": 14, "cornerston": 0, "corp": [8, 10], "corr": 17, "correct": 13, "correctly": 12, "corrent": 6, "correspond": [2, 4, 6, 11], "correspondent": [4, 6, 10], "corresponding": [3, 6, 13, 14, 15], "corresponds": [2, 6, 10], "corret": 6, "corrig": 1, "corromp": 6, "corrupted": 6, "corruption": 6, "costum": 6, "cot": 6, "cota\u00e7\u00e3": 6, "couchdb": 6, "couchdbadapt": 6, "could": [1, 2, 4, 6, 8, 10, 12, 13, 15], "count": [5, 7, 13, 14, 16], "coupl": 16, "cours": [1, 8], "cp": 2, "creat": [0, 1, 2, 4, 5, 6, 8, 12, 13, 14, 16], "create_form": 12, "create_thing": 12, "created": [0, 2, 4, 5, 6, 8, 12, 13, 16], "created_by": 6, "created_on": 6, "creating": [1, 2, 5, 6, 13, 15, 16, 17], "creation": 6, "creativ": 12, "creativity": 13, "credential_decod": 6, "cresc": 6, "cri": [2, 3, 4, 5, 6, 8, 10, 13, 14], "cria\u00e7\u00e3": [2, 6, 14], "crit": 12, "critical": 2, "crit\u00e9ri": 6, "cross": [5, 10], "crossorigin": 8, "crt": [2, 6], "crud": [3, 12, 16], "cruz": [1, 6], "crypt": 2, "cs": 5, "csrf": [5, 12], "csrf_protection": 12, "csrf_session": 12, "css": [1, 4, 5, 8, 10, 12, 13, 14, 16], "csv": 15, "ct": 5, "ctrl": [2, 3], "cubrid": 6, "cubridadapt": 6, "cubriddb": 6, "cuj": 6, "current": [5, 6, 10, 13, 14, 15, 16], "current_record": 6, "currently": [2, 5, 8], "curs": 1, "cursor": [6, 16], "curt": 6, "custom": [0, 4, 5, 6, 8, 10, 15, 16, 17], "custom_check": 12, "custom_qualifi": 6, "customiz": [8, 12, 14], "customizabl": [12, 14], "customization": 12, "customizing": 17, "cx_oracl": 6, "c\u00edclic": 6, "c\u00f3dig": [4, 6, 8, 10], "c\u00f3p": 6, "d": [2, 7, 10, 12], "dad": [0, 1, 3, 4, 5, 13, 17], "daemon": 2, "daemons": 16, "dal": [2, 4, 7, 12, 13, 14, 16, 17], "dals": 6, "dan": 0, "danc": 13, "dand": 4, "dangerous": 15, "daquel": 6, "dar": 6, "dash": 12, "dashboard": [2, 4, 5, 8, 12, 16, 17], "dashboard_mod": 2, "dat": [0, 2, 5, 6, 7, 8, 10, 13, 14, 15, 16], "data_label": 16, "databas": [0, 1, 3, 7, 13, 14, 15, 16, 17], "datalist": 16, "datetim": [4, 5, 6, 7, 12, 16], "datetimewidget": 12, "day": 12, "days": 12, "db": [2, 3, 4, 5, 7, 10, 12, 13, 14, 15, 16], "db1": 6, "db2": 6, "db2adapt": 6, "db2ibm": 6, "db2pyodbc": 6, "db_a": 6, "db_b": 6, "db_codec": 6, "db_fold": [5, 7, 14], "db_nam": 6, "db_uid": 6, "dbadmin": 4, "dbi": 12, "dbo": 6, "dbset": 12, "dbstor": 5, "dc": 13, "dd": 12, "deal": [6, 16], "dealfar": 0, "debounc": 16, "debug": [1, 2, 5, 6, 8], "debugg": 1, "debugged": 8, "debuggers": 15, "debugging": [1, 4], "decid": [6, 12, 14], "decim": 4, "decimal": [6, 12], "decimals": 12, "decl": [4, 6], "declar": [0, 4, 5, 6, 8], "declared": 5, "decod": 6, "decode_credentials": 6, "decoded": 6, "decomp\u00f5": 6, "decor": [1, 4, 17], "decorated": 15, "decorator": [4, 5, 6, 15], "decorators": [5, 15], "dedic": [1, 4, 15], "dedicated": [1, 5, 10], "def": [4, 5, 6, 7, 10, 12, 13, 14, 15, 16], "default": [2, 3, 4, 5, 6, 7, 10, 12, 13, 14, 15, 16], "defaults": [5, 6, 12, 14, 15], "deferred": [6, 16], "defin": [0, 4, 5, 8, 10, 12, 14, 16], "define_tabl": [5, 7, 12, 13, 14, 15], "defined": [2, 4, 5, 6, 8, 12, 13, 14, 15, 16], "defining": 14, "definit": 12, "definition": [6, 7, 12, 14], "definitions": [6, 7, 15], "defini\u00e7\u00e3": 6, "defini\u00e7\u00f5": 6, "deform": 11, "deix": 13, "del": [5, 6, 10], "delay": 16, "delaying": 16, "deleg": 6, "delet": [2, 4, 7, 12, 14, 16], "deletabl": [12, 14], "delete_record": 6, "deleted": 6, "deleting": [6, 14], "deletion": 6, "deletions": 6, "delimit": [0, 6, 8], "delimiters": [5, 15], "deliv": 16, "delt": 16, "dem": [1, 2, 16], "demand": 6, "denormaliz": 7, "denormalization": 6, "dentr": [0, 2, 4, 6, 14], "deny": 7, "depend": [4, 5, 6], "dependenc": [0, 2, 5, 15], "dependent": [2, 3, 4, 5], "depending": [6, 8, 12, 14], "depends": [5, 6, 15], "deploy": 2, "deployment": 1, "deployment_tools": 2, "depo": [2, 3, 6], "deprecated": [12, 16], "depur": [6, 8], "deriv": 6, "derived": [6, 12], "desat": 6, "desativ": 6, "desc": 14, "descart": 6, "descendant": 10, "descobert": [2, 11], "descompact": 2, "descrev": 6, "describ": [3, 12], "described": [2, 4, 5, 6, 12], "description": [6, 7, 12, 13], "descriptiv": 12, "descrit": [2, 4, 6, 14], "desd": [5, 6], "desej": [1, 2, 5, 6, 13, 14], "desempenh": 6, "desencad": 3, "desenvolv": 0, "desenvolvedor": [1, 8, 13, 14], "desfaz": 6, "design": [0, 13, 16, 17], "designed": [0, 4, 6, 8, 12, 16], "desir": 8, "desired": [5, 12], "desloc": 6, "desnormaliz": 7, "despej": 6, "dess": [0, 5, 6, 13], "dest": [4, 6, 12], "detail": [6, 10, 14, 16], "detail_fields": 12, "detailed": [2, 14], "details": [0, 1, 5, 6, 7, 8, 12, 14], "detalh": [6, 14], "determin": [4, 5, 6, 11, 12, 13, 14], "determined": [8, 12], "determining": 5, "deterministic": 5, "dev": [1, 2, 3, 4, 5, 6, 8, 10, 13, 14], "develop": [5, 6, 8, 13, 14, 15], "developers": [0, 1, 6, 13, 16], "developing": 4, "development": [0, 1, 4, 6], "development_tools": 2, "devic": 8, "devolv": [6, 8], "di": [0, 5], "diagr": 7, "dialect": 6, "dialects": 6, "dialet": 6, "dic": 17, "dicion\u00e1ri": [10, 11, 12], "dict": [4, 5, 6, 11, 12, 14, 15, 16], "dictionari": 6, "dictionary": [4, 5, 6, 10, 12, 15], "did": [0, 4, 16], "dif": 6, "diferenc": 6, "diferent": [2, 5, 6, 11, 14], "diff": 6, "differenc": [6, 12, 15], "different": [0, 2, 5, 6, 8, 12, 13, 15, 16], "differs": [6, 14], "difficult": [2, 16], "dif\u00edcil": 1, "dig": 6, "digit": [12, 13], "dimensions": 12, "dinam": 10, "din\u00e2m": [6, 17], "dir": [2, 12, 16], "direct": 6, "directiv": [2, 8, 12], "directly": [2, 4, 6, 7, 10, 12, 13, 14, 16], "directory": 13, "direit": [3, 6], "diret": [1, 5, 6, 8], "diret\u00f3ri": 4, "dirnam": [5, 7, 14], "disabl": [6, 14], "disabled": [7, 10, 12], "disallow": 12, "discord_client_id": 13, "discord_client_secret": 13, "discount": 6, "discounted_total": 6, "discounted_total_pric": 6, "discounted_unit_pric": 6, "discovered": 13, "discriminator": 13, "discuss": 3, "discussed": [6, 8, 10, 12], "discussion": 6, "discuss\u00e3": 1, "discuss\u00f5": 1, "discut": 6, "disk": 5, "dismissal": 15, "dismissibl": 5, "dispar": 6, "display": [5, 12, 13, 14, 16], "displayed": [3, 6, 10, 12, 14, 16], "displaying": [5, 12, 14], "displays": [13, 14], "dispon": 6, "dispon\u00edv": 1, "disposit": [4, 5, 13], "diss": [4, 6, 14], "distinct": [8, 12], "distinction": 6, "distin\u00e7\u00e3": 6, "distribu": 6, "distribut": 6, "distributed_transaction_commit": 6, "distribution": 6, "ditched": 0, "div": [4, 5, 8, 12, 14, 15, 16], "divisibl": [8, 12], "division": [8, 10], "divis\u00e3": 8, "divmod": 6, "diz": [4, 6, 13, 14], "djang": [0, 1, 6, 15], "do_connect": 6, "dobr": 6, "dobrag": 6, "doc": 1, "dockerfil": 2, "docs": [1, 2, 4, 16], "doctor": 6, "doctyp": [8, 14], "document": [6, 8, 10, 12, 16], "documentation": [3, 12, 16], "documentations": 5, "documented": [5, 12], "does": [0, 2, 5, 6, 8, 12, 13, 14, 15, 16], "doesn": 5, "dog": [11, 12, 16], "doh": 12, "doing": [6, 12, 16], "dois": [0, 5, 6, 8], "dom": [8, 17], "domain": [12, 13], "don": [2, 4, 5, 6, 8, 12, 13, 14, 15], "dot": 12, "doubl": [2, 6, 8], "doubt": 14, "down": [12, 16], "download": [2, 12], "download_url": 12, "downs": 6, "downsid": [6, 15], "dramat": 6, "driv": 6, "driven": 0, "driver_args": 6, "drivers": 6, "drop": 12, "dropdown": [12, 14, 16], "dropdowns": 16, "dropping": 6, "dsn": 6, "duas": [5, 6], "due": [6, 7, 12], "dummy": [6, 8], "dummyrespons": 8, "dump": 5, "dumpfil": 6, "dumps": [6, 16], "duplicat": 6, "durability": 7, "during": [6, 14], "dynamic": [4, 8, 13], "dynamically": [6, 7, 8, 12], "d\u00e1": [0, 2, 14], "d\u00edgit": [4, 6], "ea": 6, "each": [2, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "earli": 16, "early": 5, "easi": [7, 8], "easiest": 6, "easily": [6, 8, 10, 12, 14], "easy": [5, 8, 12], "ebook": 1, "echo": 4, "ecosyst": 16, "edge": 16, "edif\u00edci": 5, "edit": [0, 2, 3, 4, 8, 12, 13, 14, 15, 16], "edit_sidec": 16, "editabl": [14, 15], "editing": [8, 10, 12, 13, 14], "editor": [1, 8], "editors": 8, "edi\u00e7\u00e3": 0, "edi\u00e7\u00f5": 3, "education": 2, "efeit": 6, "efet": 6, "effect": [3, 5, 6, 12], "efficient": [0, 5], "efficiently": [1, 15], "efforts": 1, "efg": 10, "eficient": 6, "eith": [6, 12], "el": 10, "element": [6, 8, 10, 12, 14, 16], "elements": [6, 10, 12, 16], "elev": 6, "elimin": [6, 14], "else": [2, 5, 6, 12, 13, 14, 15, 16], "elsected": 14, "elt": 16, "el\u00e9tr": [4, 5, 13], "emacs": 8, "email": [2, 8, 12, 13, 15, 16], "emails": [12, 16], "emails_onvalidation": 12, "embed": 10, "embedded": [5, 8, 12], "embedding": 8, "ember": 12, "embor": 6, "emerging": 16, "emit": [3, 6], "employ": 5, "employe": 14, "empreg": 14, "empres": 14, "empty": [2, 4, 12, 16], "empty_regex": 12, "en": [5, 7, 16], "enabl": [1, 5, 6, 7, 10, 13, 15, 16], "enable_record_versioning": 6, "enabled": [5, 7, 13, 15], "encaix": 4, "encapsulat": [8, 10], "encerr": 8, "enclosed": 6, "enclosing": 8, "encod": 6, "encoded": [5, 6, 12, 16], "encoding": 6, "encontr": [4, 6, 8, 11, 13], "encrypted": [2, 5], "encryption": 0, "end": [4, 6, 8, 12, 13, 14, 16], "enderec": 6, "ending": 8, "endpoint": [13, 16], "ends": [6, 8, 15], "enforc": [5, 12], "enforced": [6, 12, 15], "enfrent": [1, 6], "engin": [6, 12], "engineering": 2, "english": 5, "enough": [12, 13], "enquant": [0, 6, 8], "enqueu": 16, "enqueue_run": 16, "enqueueing": 16, "ensin": 13, "ensur": 12, "entant": [6, 8, 10, 14], "entend": 6, "enter": [4, 12, 13], "entered": 10, "entering": 5, "enterpris": [1, 13], "entidad": 6, "entir": [8, 15, 16], "entity_quoting": 6, "entrad": [4, 6, 10, 11], "entri": [7, 12, 14], "entropy": 12, "entry": [0, 6, 15], "ent\u00e3": [2, 4, 6, 13], "env": [1, 15], "envelop": 16, "envi": [10, 14], "environ": [5, 15], "environment": [0, 1, 4, 5, 6], "environments": 1, "envolt": 11, "envolv": 6, "eo": 6, "epub": 1, "eq": 7, "equal": [7, 12, 13, 16], "equals": [10, 13], "equip": 5, "equivalent": [4, 5, 6, 10, 12, 15], "equivalently": 10, "errad": 6, "errlog": 5, "erro": [2, 3, 6], "error": [2, 3, 5, 6, 7, 8, 10, 12, 16], "error_messag": 12, "errorlog": 2, "errors": [1, 5, 6, 7, 12, 15], "escap": [6, 8, 10], "escaped": [6, 8, 10], "escaping": [6, 8], "escolh": [1, 4, 6], "escond": 6, "escrav": 6, "escrev": [6, 8, 10], "escrit": [6, 8], "espac": [6, 11, 14], "espec": [5, 6, 10], "especial": [2, 4, 6, 11], "especializ": 6, "especially": [0, 2, 5, 12, 13], "especif": [4, 6], "especific": [4, 5, 6], "especifiqu": 14, "espec\u00edf": [1, 2, 6], "esper": [4, 5, 6], "esprim": 4, "esquec": 6, "esquem": 6, "esquerd": [6, 14], "estabelec": 6, "establish": 6, "established": 6, "establishing": 15, "estad": [5, 6], "estam": 6, "estar": [4, 6, 10], "estend": [0, 5, 6], "estil": 14, "estiv": 6, "estrangeir": [1, 14], "estreit": 6, "estrutur": [4, 5, 6, 11], "est\u00e1t": [10, 17], "est\u00e3": [5, 6, 7, 10, 13], "etap": 6, "etc": [4, 5, 6, 7, 11, 15], "etiquet": [6, 10], "eval": 16, "evaluat": [5, 12, 16], "evaluated": [6, 7], "even": [1, 4, 5, 6, 8, 10, 12, 14, 15, 16], "event": 6, "event_tim": 6, "events": [2, 16], "eventually": 5, "ever": 6, "every": [0, 5, 6, 13, 14, 15, 16], "everyon": [0, 1], "everything": [2, 15, 16], "evit": [0, 2, 6, 8, 12], "evolution": 0, "ex": 6, "exact": [8, 15], "exactly": 5, "exampl": [1, 2, 4, 5, 6, 8, 10, 11, 13, 17], "exat": [6, 8], "excellent": [1, 14], "except": [2, 5, 6, 8, 10, 12, 13, 16], "exception": [5, 6, 12, 13, 16], "exceptions": [4, 5, 16], "excep\u00e7\u00e3": 8, "excerpt": 8, "excet": [5, 6], "exce\u00e7\u00e3": [4, 5, 6, 8], "exce\u00e7\u00f5": 4, "exclu": 6, "exclud": 12, "exclus": 6, "exclusiv": [12, 13], "exclusively": [0, 5, 6], "exclus\u00e3": 14, "exclu\u00edd": [2, 6], "exe": 2, "execu": [2, 4], "execut": [0, 2, 3, 6, 12], "executabl": [6, 10], "executed": [2, 5, 6, 8, 15, 16], "executing": 16, "execution": [1, 16], "exempl": [2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "exercis": 5, "exerc\u00edci": 13, "exib": [3, 6, 8, 10, 14], "exibi\u00e7\u00e3": [13, 14], "exig": [1, 2, 6, 13], "exist": [1, 2, 4, 5, 6, 8, 12, 16], "existenc": 13, "existent": [2, 6, 13, 14], "existing": [2, 5, 6, 12], "exists": [5, 6], "exit": 2, "exiting": 5, "exp": [4, 6], "expand": 3, "expect": [6, 12], "expected": 15, "expects": [2, 10], "experienc": [1, 13], "experienced": 0, "experiment": [1, 12], "experimental": [2, 5], "experimenting": 1, "expir": 5, "expiration": [5, 6], "explain": 12, "explained": [5, 6, 12, 14], "explanatory": 6, "explic": [4, 6], "explicit": [0, 2, 4, 5, 6, 8, 12], "explicitly": [0, 2, 5, 6, 8, 10, 12, 16], "explict": 6, "exploring": 3, "expl\u00edcit": [6, 13], "expor": [4, 13], "export": 17, "export_to_csv_fil": 6, "exporting": 6, "expos": [4, 5], "exposed": 6, "expost": 7, "express": 12, "expressed": 12, "expression": [4, 6, 8, 11, 12, 14], "expressions": [10, 12, 16], "express\u00e3": [6, 7, 11, 14], "express\u00f5": 11, "exp\u00f5": [0, 3, 4, 6, 13], "extend": [5, 6, 12, 13, 15, 16], "extended": 8, "extends": [6, 8, 16], "extensibl": 15, "extension": [12, 15], "extensions": 12, "extensively": [3, 6], "extens\u00e3": 6, "extern": 2, "external": 6, "extra": [5, 6, 12, 13], "extra_fields": 5, "extract": [6, 12], "extracted": 6, "extracts": 16, "extras": 6, "extra\u00edd": 6, "extrem": 6, "f": [6, 13, 14, 15, 16], "fa": 14, "facebook": [0, 5], "facil": [4, 5, 6], "facilitat": 4, "fact": [4, 5, 15], "factori": [5, 10], "fail": [6, 8, 12, 16], "failed": 6, "fails": [3, 12], "failur": [6, 12, 16], "fak": 6, "fake_migrate_all": 6, "falh": 4, "fall": 12, "fals": [2, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "falt": 6, "famous": [1, 6], "fancy": 16, "far": [14, 16], "fas": 6, "fast": [0, 4, 6, 8, 15, 16], "fat": 6, "fath": 6, "father_id": 6, "favorite_color": 5, "faz": [2, 5, 8, 10, 12, 13], "fb00": 12, "fdb": 6, "fe80": 12, "feasibl": [2, 12], "featur": [0, 4, 6, 7, 8, 15, 17], "february": 5, "fech": [6, 8, 10], "fechament": 10, "feit": 6, "fetch": [6, 15, 16], "fetchon": 6, "few": [8, 13, 16], "fez": [2, 6], "ff00": 12, "fic": 6, "ficheir": 6, "fict\u00edc": 6, "fict\u00edci": 6, "fid": 6, "field": [2, 4, 5, 7, 13, 14, 15, 16, 17], "field1": 6, "field2": 6, "field3": 6, "field_id": 14, "fieldnam": [6, 16], "fields": [5, 7, 12, 13, 14, 15, 17], "fieldstorag": 12, "fifth": 14, "fil": [0, 1, 2, 3, 5, 6, 8, 10, 11, 13, 14, 16, 17], "file_content": [6, 16], "file_nam": [6, 16], "file_path": 15, "fileir": 6, "filenam": [2, 4, 5, 6, 12], "filep": 4, "filepaths": 4, "filesyst": [4, 5, 6], "fileuploadwidget": 12, "fill": [12, 16], "filled": 12, "filt": [2, 4, 7, 12, 14], "filter_in": 12, "filter_out": 14, "filtered": 13, "filters": [4, 12], "filtr": [13, 14], "filtrag": [4, 14], "fim": [1, 2, 5, 6], "fin": [2, 13, 14], "final": [1, 2, 5, 6, 11], "finally": [4, 14], "find": [1, 2, 4, 12, 13, 14], "find_by_tag": 13, "find_match": 11, "findall": 12, "finding": 14, "finds": [6, 16], "fins": 6, "firebird": 6, "firebird_embedded": 6, "firebirdadapt": 6, "firebirdembedded": 6, "firebirdembeddedadapt": 6, "firefox": [3, 16], "firfox": 16, "first": [0, 2, 3, 5, 7, 8, 10, 12, 13, 14, 15, 16], "first_nam": [4, 5, 13, 14], "first_only": 10, "first_row": 6, "first_row_dict": 6, "fist": 12, "fits": 12, "fix": [5, 6], "fixed": [6, 15], "fixtur": [0, 2, 6, 10, 13, 15, 17], "fixur": 17, "fiz": 1, "fk_field": 16, "fk_tabl": 16, "fkdaog": 8, "flag": 12, "flash": [8, 12, 16, 17], "flask": [0, 15], "flexibil": [0, 14], "flexibility": 16, "flexibl": [6, 13], "flex\u00edv": 0, "flex\u00edvel": 6, "flight": 7, "float": [4, 12], "floating": 12, "flow": 13, "flux": 6, "fn": 2, "focus": 16, "fold": [1, 2, 3, 4, 5, 6, 7, 11, 12, 14, 15], "folders": 2, "follow": [2, 4, 7, 13, 14, 15], "followed": [2, 5, 12], "following": [1, 2, 4, 5, 6, 8, 10, 12, 13, 14, 15, 16], "follows": [5, 6, 12], "font": [6, 8, 12, 14], "foo": 14, "foot": 8, "footers": 8, "footing": 13, "forbid": 12, "forbidden": 12, "forc": [2, 5, 6, 7, 12, 13], "forcing": 12, "foreground": 12, "foreign": 14, "foreign_key_checks": 6, "forgery": 5, "forget": 14, "form": [0, 4, 5, 6, 7, 11, 13, 14, 17], "form_basic": 12, "form_custom_widgets": 12, "form_exampl": 12, "form_minimal": 12, "form_nam": 12, "form_widgets": 12, "format": [4, 5, 7, 10, 11, 13, 14], "formats": 12, "formatt": 16, "forma\u00e7\u00e3": 6, "formdat": 7, "forms": [6, 10, 14, 15, 16], "formstyl": [12, 14, 16], "formstylebootstrap4": 12, "formstylebulm": [12, 14, 16], "formstyledefault": [12, 14], "formstylefactory": 16, "formul\u00e1ri": [6, 13, 14, 17], "fornec": [0, 2, 3, 4, 5, 6, 10, 13, 14], "forum": 3, "foruml\u00e1ri": [6, 10, 17], "forward": 1, "found": [2, 6, 12], "four": [2, 6], "fourth": 12, "fp": 5, "fr": 11, "fracass": 6, "framework": [0, 2, 12, 13, 14, 15, 16], "frameworks": [0, 2, 5, 6, 15, 16], "fras": 6, "fre": [1, 5, 13], "freetext": 16, "frent": 8, "frequently": 12, "frequ\u00eanc": 1, "friendly": [0, 5, 8], "from": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13, 14, 15, 16], "from_addr": 16, "from_address": 13, "from_adds": 16, "from_email": 16, "front": [12, 16], "frontends": 16, "fronts": 0, "fsstorag": 5, "ftps": 12, "fug": [6, 8], "full": [2, 4, 6, 8, 12, 16], "fullnam": 6, "fully": [4, 5, 6, 12], "func": [2, 5], "funcion": [6, 17], "funcional": [0, 5, 6], "function": [2, 4, 5, 6, 7, 8, 10, 12, 14, 15, 16], "functional": 16, "functionaliti": 2, "functionality": [0, 8, 15], "functions": [2, 5, 10, 16], "functools": 16, "fund": 4, "fun\u00e7\u00e3": [4, 6, 8, 10], "fun\u00e7\u00f5": [4, 8], "futur": [5, 15, 16], "f\u00e1bric": 6, "f\u00e1cil": [0, 6, 8, 10, 13], "f\u00edsic": 13, "g": [1, 2, 6, 10, 12], "gain": 2, "gananc": 4, "garant": [6, 8], "garraf": 4, "gavgavian": 1, "gend": 6, "general": [5, 6, 12, 13], "generaliz": 6, "generally": [2, 5, 6, 8], "generat": [2, 6, 8, 10, 12, 13, 14, 15, 16], "generated": [1, 5, 6, 8, 12, 14, 16], "generation": 1, "generator": 10, "generic": [2, 4, 5, 6, 12], "generically": 6, "genindex": 17, "gen\u00e9r": 6, "ger": [6, 8, 10, 13, 14], "gerador": 6, "geral": [0, 2, 6, 7, 10], "german": 11, "gest\u00e3": [0, 1], "get": [1, 2, 4, 5, 6, 8, 12, 13, 14, 15, 16, 17], "get_cooki": 16, "get_us": [4, 5, 13, 15], "get_vars": [7, 15], "gets": [8, 13], "getvalu": 6, "gevent": [1, 2], "geventwebsocketserv": 2, "geventws": 2, "gia": 5, "gib": 6, "gif": 12, "git": [1, 2], "github": [2, 3, 4, 6, 14], "gitlat": 1, "giv": [4, 5, 6, 8, 13], "given": [2, 5, 6, 8, 12, 16], "giving": 5, "global": [0, 6, 15, 16], "globally": [2, 6], "globals": [5, 6, 8, 13, 15], "go": [2, 4, 14], "goes": [6, 12], "going": [4, 16], "good": [3, 12], "googl": [0, 3, 5, 8, 12, 14], "googledatastor": 6, "googledatastoreadapt": 6, "googlemysql": 6, "googlepostgr": 6, "googlesql": 6, "googlesqladapt": 6, "gost": 6, "got": 6, "gotch": 6, "gott": 8, "grac": 6, "grad": 0, "grand": 6, "granul": 6, "granulary": 12, "graphically": 6, "graphql": 7, "grau": 6, "grav": 6, "grava\u00e7\u00f5": 12, "gravidad": 6, "grav\u00e1vel": 6, "great": 16, "green": [4, 6, 12, 15], "grelh": 14, "grid": [0, 17], "grid_class_styl": 14, "grid_tutorial": 14, "gridactionbutton": 14, "gridclassstyl": 14, "gridclassstylebulm": 14, "grids": 17, "group": [1, 3, 5, 13, 15], "group_nam": [5, 13], "groupby": 12, "grouping": 2, "groups": [0, 1, 3, 5, 13, 15], "growing": [0, 16], "grup": [6, 13], "gt": [7, 10], "guarant": 5, "guaranteed": [6, 15, 16], "gui": 3, "guid": 2, "guidelin": 13, "gunicorn": 2, "gunicorngevent": 2, "gz": 12, "h": [2, 12], "h1": [4, 8], "h2": [8, 12], "habilit": 6, "had": 6, "hamburg": 8, "hand": [2, 16], "handl": [2, 4, 5, 6, 15, 16], "handled": [4, 5, 12, 16], "handlers": 4, "handling": 14, "handy": 6, "hanging": 1, "happen": 5, "happens": 6, "hard": 15, "hardcod": 5, "harmoniz": 4, "has": [0, 2, 4, 5, 6, 8, 12, 13, 14, 15, 16], "has_membership": 13, "hash": [2, 6, 12], "hashed": 12, "hav": [0, 1, 2, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "head": [4, 5, 6, 8, 14, 16], "headers": [4, 8, 16], "heading": 12, "headings": [10, 14], "height": [12, 14, 16], "hell": [4, 5, 6, 8, 10, 12, 13, 16], "help": [1, 2, 5, 6, 7, 8, 10, 12, 14, 15], "helpers": [4, 6, 8, 12, 14, 15, 16, 17], "helps": [6, 8, 12], "henc": [0, 2, 5, 6, 12], "her": [0, 1, 2, 4, 5, 6, 7, 8, 10, 12, 13, 14, 16], "herd": 6, "her\u00f3": 7, "hesitat": 6, "hex": 12, "hh": 12, "hi": 16, "hid": 14, "hidden": [12, 16], "hidden_div": 16, "hidden_input": 16, "hierarchical": [6, 13], "high": [12, 13], "highest": 12, "highlighting": [1, 8], "highly": [1, 14], "hints": 14, "his": 12, "historical": 0, "history": 12, "hist\u00f3r": [5, 6], "hmac": 12, "ho": 5, "hold": 16, "holds": 6, "hom": 8, "hom\u00f3log": 4, "hor": 6, "hosped": 1, "host": [2, 5, 12, 13], "hosted": 1, "hour": 12, "hous": 15, "housekeeping": 6, "houv": 6, "how": [0, 2, 4, 5, 6, 7, 8, 12, 13, 14, 15, 16], "howev": [6, 8, 12, 16], "href": [8, 10, 13, 14], "hs256": 5, "html": [1, 2, 4, 5, 7, 8, 11, 12, 13, 14, 15, 16], "html5": 8, "htmx": [14, 17], "htmx_form": 16, "htmx_form_dem": 16, "htmx_grid": 16, "htmx_list": 16, "htmxautocompletewidget": 16, "http": [0, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13, 14, 15], "https": [1, 3, 4, 5, 7, 8, 12, 13, 14, 16], "httrespons": 5, "hulk": 12, "hundreds": 16, "hx": 16, "hypertext": 16, "hyphen": 10, "h\u00e1bit": 2, "h\u00edfens": 10, "i": [2, 4, 5, 6, 7, 8, 12, 13, 16], "i18n": 11, "ibm_db_dbi": 6, "icon": [8, 14], "icons": 14, "id": [2, 5, 7, 8, 10, 12, 13, 14, 15, 16], "id1": 6, "id2": 6, "id_field_nam": 14, "id_valu": 14, "ide": [0, 1, 2, 3, 6], "ident": 7, "identical": 15, "identifi": 6, "identific": [6, 10], "identify": 4, "identifying": [5, 12], "identity": [6, 7, 15], "ides": 15, "idiom": 11, "idn": 12, "ids": [6, 14], "ie": 12, "ietf": 12, "if": [0, 1, 2, 3, 4, 5, 6, 7, 10, 12, 13, 14, 15, 16], "ifram": 12, "ignor": [5, 6, 8, 12, 14], "ignore_attribute_plugin": 14, "ignore_common_filters": [6, 12], "ignore_field_cas": 6, "ignored": [4, 8, 10, 14, 16], "igual": [6, 7], "iip": 6, "illustrat": 6, "ilustr": [6, 8], "imag": [6, 8, 10, 12], "image_fil": 6, "imagin": [5, 6, 8, 16], "imaging": 12, "imap": 6, "imapadapt": 6, "imaplib": 6, "imediat": 14, "img": [4, 12], "immediat": 2, "immediately": 6, "immensely": 0, "imped": [6, 10], "impersonat": 13, "impersonating": 13, "implement": [5, 6, 8, 13], "implementation": [4, 8, 12, 15], "implementations": 16, "implemented": 6, "implements": [5, 6], "impli": 7, "implications": 5, "implicit": 6, "implicitly": 12, "implictly": 6, "impl\u00edcit": 6, "impor": 6, "import": [0, 1, 2, 4, 5, 7, 8, 10, 11, 12, 13, 14, 15, 16, 17], "import_and_sync": 6, "import_from_csv_fil": 6, "important": [0, 2, 4, 5, 6, 12, 13], "imported": [2, 12, 13, 15], "importing": 6, "impos": 8, "impot": 12, "imprim": 6, "improved": 12, "improvement": 14, "improving": [12, 13], "in": [0, 1, 2, 3, 4, 6, 7, 11, 12, 13, 14, 15, 17], "inalter": 6, "inclu": [0, 4, 6, 8, 10, 14], "includ": [4, 6, 7, 10, 14, 16], "include_action_button_text": 14, "include_paths": 4, "included": [6, 8, 12, 14], "including": [5, 12, 14, 15, 16], "inclusion": 0, "inclusiv": [0, 12], "inclus\u00e3": 10, "inclu\u00edd": [6, 10], "incoming": 2, "incomum": 6, "incorpor": 6, "incorret": 8, "increased": 5, "increment": 6, "indeed": [0, 5], "indent": 8, "indentation": 8, "indented": 8, "independent": [0, 5, 6, 13], "indesej": [2, 6], "index": [1, 2, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "indic": [4, 6], "indicat": [12, 15], "indicator": 16, "individu": [0, 2, 5, 6], "individual": [5, 6, 7, 8, 12], "indo": 6, "inefficient": 5, "ineficient": 6, "infinit": 6, "info": [2, 4, 5, 13], "inform": [1, 4, 5, 6, 12], "information": [5, 6, 7, 12, 13, 15, 17], "informed": 6, "informix": 6, "informixadapt": 6, "informixdb": 6, "informixs": 6, "ingredient": 4, "ingres": 6, "ingresadapt": 6, "ingresdb": 6, "ingresu": 6, "ingresunicod": 6, "ingresunicodeadapt": 6, "inic": [2, 4], "inicializ": [4, 5], "init": [4, 14], "initial": [8, 12], "initializ": 2, "initialized": 0, "inject": [12, 14, 17], "injected": [5, 8, 10, 12], "injecting": 10, "injection": 6, "injections": 10, "inje\u00e7\u00e3": 6, "inlin": 16, "inner": [5, 16], "input": [2, 5, 6, 8, 12, 14, 16], "inputs": [12, 16], "insegur": 10, "insensitiv": 12, "inser": [3, 8], "insert": [5, 7, 8, 12, 13, 14, 16], "inserted": 8, "inserting": 12, "inserts": 12, "inser\u00e7\u00f5": 6, "insid": [1, 2, 4, 5, 6, 8, 10, 12, 14, 15, 16], "insir": 6, "insist": 10, "inspector": 8, "inspired": 7, "instal": [3, 6, 13, 17], "install": [2, 6, 13, 16], "installation": [2, 6], "installations": 17, "installed": [0, 1, 2, 3, 4, 5, 6], "installs": 2, "instanc": [5, 6, 10, 12, 14, 16], "instanci": 6, "instantiat": [6, 13, 15], "instantiated": 6, "instantiation": [13, 14], "instead": [1, 4, 5, 6, 8, 10, 12, 13, 14, 15, 16], "instructions": [2, 12], "instru\u00e7\u00e3": 6, "instru\u00e7\u00f5": 6, "inst\u00e2nc": [6, 14], "int": [4, 6, 12, 13, 15], "int2ip": 6, "integ": [2, 6, 7, 10, 12, 16], "integers": 12, "integr": 0, "integrated": 1, "integration": 16, "integrity": [8, 16], "inteir": [4, 6], "intended": [6, 16], "intentionally": 12, "interaction": 5, "interag": 0, "interchangeably": 13, "interfac": [0, 3, 5, 6, 14, 15, 16], "interior": 8, "intermedi\u00e1r": 6, "intern": [5, 6], "internacionaliz": [0, 4, 17], "internal": [0, 1, 8, 13], "internally": [4, 5, 6, 14], "internationaliz": 12, "internationalization": [5, 12, 15], "internationalized": 12, "interpret": [0, 6], "interpreted": 10, "interpreting": 7, "interromp": 6, "intersec\u00e7\u00e3": 6, "into": [0, 2, 4, 5, 6, 8, 10, 12, 15, 16], "introdu": 2, "introduc": 0, "introduction": [1, 17], "introduz": 8, "intuitively": 12, "invalid": [2, 6, 12], "invalidated": 5, "invalidating": 12, "invers": 6, "invert": [6, 12], "invisibl": 6, "involv": [6, 14, 15], "involved": [6, 8], "inv\u00e9s": 6, "in\u00edci": 6, "in\u00fatil": 6, "io": [2, 6], "ip": [2, 6, 12], "ip2int": 6, "ip_list": 13, "ipaddr": 6, "ipaddress": 13, "iptabl": 2, "ipv4": [6, 12], "ipv4address": 13, "ipv4network": 13, "ipv6": 12, "irem": [4, 5], "ir\u00e1": [2, 3, 4, 6, 8, 13, 14], "is": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "is_6to4": 12, "is_activ": 6, "is_automatic": 12, "is_dat": 6, "is_datetim": 6, "is_decimal_in_rang": 6, "is_empty_or": 6, "is_float_in_rang": 6, "is_impersonating": 13, "is_in_db": [6, 14], "is_in_set": 6, "is_int_in_rang": 6, "is_json": 6, "is_length": 6, "is_link_local": 12, "is_localhost": 12, "is_multicast": 12, "is_not_empty": 6, "is_null_or": 14, "is_privat": 12, "is_public": 6, "is_reserved": 12, "is_routeabl": 12, "is_tered": 12, "is_tim": 6, "isdir": [7, 14], "isn": [12, 14], "iso": 7, "isolation": 16, "issu": [0, 6], "it": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13, 14, 15, 16], "italian": [5, 11], "item": [6, 8, 10], "itemize1": 8, "itemize2": 8, "items": [6, 7, 8, 12], "itens": 6, "iter": 8, "iterabl": [6, 12], "iterations": 12, "iterators": 6, "iterselect": 6, "its": [0, 1, 2, 3, 4, 5, 6, 8, 10, 12, 13, 14, 15, 16], "itself": [2, 6, 12, 16], "it\u00e1l": 10, "iv": 6, "janel": 2, "javascript": [1, 4, 7, 10, 16], "jdbc": 6, "jdbcpostgr": 6, "jdbcpostgresqladapt": 6, "jdbcsqlit": 6, "jdbcsqliteadapt": 6, "jetbrains": 1, "jim": [0, 1, 14], "jinja2": 5, "job": [7, 12, 14], "jog": [6, 11], "john": [0, 6], "join": [4, 5, 7, 12, 14, 15], "joined": 14, "joins": [14, 17], "jonathan": 6, "jorn": 1, "journalist": [7, 14], "jpeg": 12, "jpg": 12, "jpsteil": 14, "jquery": [10, 12, 16], "js": [0, 4, 5, 8, 11, 15, 17], "jsl": 16, "json": [0, 1, 2, 4, 5, 6, 7, 11, 12, 15, 16], "junt": [10, 14], "jun\u00e7\u00e3": [6, 13], "jun\u00e7\u00f5": 6, "just": [1, 2, 4, 5, 6, 7, 8, 12, 14, 16], "jwt": 5, "jython": 6, "k": [5, 8, 15], "kargs": 10, "kbd": 2, "kbytes": 5, "keep": [1, 2, 4, 5, 6, 7, 8, 10, 12, 15], "keep_valu": 12, "keeps": [5, 14], "kell": 0, "ken": 6, "kent": [7, 14], "kevin": 0, "key": [2, 4, 5, 6, 7, 10, 12, 13, 16, 17], "keycod": 16, "keyed": 6, "keys": [6, 7], "keyup": 16, "keyword": [6, 8, 10], "keywords": 6, "kfield": 16, "killed": 16, "kind": 4, "kindness": 0, "kinterbasdb": 6, "know": [5, 14], "known": [6, 8], "known_expressions": 11, "knows": 5, "ktabl": 16, "kwargs": [6, 16], "ky8iq0g4b3cyey6wyhn3yt9pw0xpsrivlkmxe40ptknxrlnz9": 8, "l": [2, 12], "la": [4, 6], "label": [6, 7, 8, 12, 16], "labeling": 15, "labels": 12, "lac": 6, "lacking": 12, "lacks": 15, "lad": [1, 5, 6], "lambd": [5, 6, 10, 12, 13, 14, 16], "lang": 5, "languag": [1, 4, 5, 8, 11, 15, 16], "larg": [0, 12], "last": [1, 5, 8, 12, 13, 14, 16], "last_insert_id": 6, "last_nam": [5, 13, 14], "last_row": 6, "lastdot": 12, "lastrowid": 6, "lat": [1, 2, 4, 5, 6, 8, 10, 12, 14], "latest": [2, 6, 15], "latin1": 6, "latt": [6, 12, 15], "launch": [1, 2], "lax": 5, "lay": [5, 15, 17], "layers": 5, "layout": [12, 13, 14, 15, 16, 17], "layouts": [8, 14], "lazily": 16, "lazy": [2, 4, 6], "lazy_tabl": 6, "lazy_total_pric": 6, "ldap": [0, 5], "ldap_plugin": 13, "ldap_setting": 13, "ldap_settings": 13, "ldapplugin": 13, "lead": [14, 16], "learn": [1, 6], "least": [1, 2, 12, 15, 16], "leav": [5, 6], "left": [8, 12, 14, 16], "legacy": 6, "leg\u00edvel": 6, "leitur": 6, "lembr": [3, 6, 8, 12], "len": [12, 16], "length": [6, 12], "ler": [1, 6], "less": [7, 12, 15, 16], "let": [7, 12, 16], "lets": 2, "letters": 12, "letting": 6, "lev": [6, 10], "levant": 6, "level": [2, 6, 7, 12, 13], "leverag": 0, "li": [8, 12, 13, 16], "lib": 2, "libldap2": 13, "librari": 13, "library": [2, 6, 11, 12, 15, 16], "libs": [8, 10, 14], "libsasl2": 13, "libsass": 4, "licens": 1, "lid": [1, 4, 5, 6, 14], "lif": 16, "lifespan": 12, "lifetim": 5, "lig": [2, 5, 6, 10], "liga\u00e7\u00e3": [4, 5, 6], "liga\u00e7\u00f5": [6, 10], "light": [6, 15], "lik": [0, 1, 2, 3, 4, 5, 7, 8, 10, 11, 12, 13, 14, 15, 16], "limit": [5, 6, 7, 12, 13], "limitation": 8, "limited": [0, 2, 5, 15, 16], "limiting": 16, "limits": 12, "limp": 1, "lin": [2, 4, 5, 6, 7, 8, 10, 12, 13, 14, 16], "linguag": [0, 4, 5, 17], "linguagens": 4, "linh": [5, 6, 8, 10, 14, 17], "link": [4, 7, 8, 10, 12, 13, 14], "linked": 7, "links": [2, 6, 14, 16], "linting": 1, "linux": 2, "list": [0, 1, 2, 4, 5, 7, 8, 10, 12, 13, 14, 16], "list_of_fields": 6, "listabl": 6, "listagens": 10, "listed": [5, 12, 16], "listen": 2, "listening": [2, 3], "listproperty": 6, "lists": [6, 14], "liststringproperty": 6, "listwidget": 12, "littl": [1, 5, 6], "liv": [6, 16], "livr": [1, 6], "lix": 6, "ll": [1, 2, 3, 5, 6, 8, 12, 14, 16], "lo": [1, 2, 3, 4, 6, 7, 8, 10], "load": [3, 5, 16], "loaded": [4, 8, 14, 16], "loading": 16, "loads": [6, 16], "loazkjy": 8, "loc": 5, "local": [3, 5, 8, 12, 13, 14], "localhost": [2, 4, 5, 6, 12], "localiz": 4, "locally": 2, "locals": [5, 12, 14, 15], "locat": 15, "location": [2, 4, 6, 8, 15], "locked": 6, "locking": 5, "locks": 16, "log": [0, 2, 4, 5, 6, 8, 10, 13, 15, 16], "logerrors": 5, "logfil": 6, "logged": [5, 8, 13, 15], "logging": [2, 13], "logging_level": 2, "logic": [2, 5, 6, 13, 14, 15, 16], "logical": 12, "login": [0, 2, 3, 4, 5, 6, 8, 12, 13, 15], "logout": [0, 8, 13], "logs": [2, 5, 6], "loj": 6, "long": [0, 2, 6, 12, 16], "longhash_tablenam": 6, "longtext": 6, "look": [5, 6, 7, 12, 13], "looking": 3, "looks": [2, 6, 12], "lookup": [5, 7], "lookups": 12, "loop": [6, 8, 16], "looping": 6, "loops": 16, "los": [2, 4, 6, 12], "lost": [5, 15], "lot": [4, 6], "lots": 1, "loved": 0, "low": [0, 12], "lowercas": 12, "lowest": 12, "lru": 5, "lt": 10, "lts": 2, "luc": [0, 1], "lug": [1, 5, 6], "lumin\u00e1r": 4, "l\u00e1": [2, 4], "l\u00edngu": 1, "m": [0, 2, 6, 10, 12], "mac": [2, 6], "macac": 5, "machin": 2, "macneiln": 2, "mad": [8, 12, 14], "magically": 0, "mai": 5, "mail": [2, 3, 5, 12, 13, 16], "mailing": 6, "mailt": 12, "main": [1, 2, 3, 4, 6, 8, 14, 15, 16], "maintain": [6, 8, 16], "maintainability": 6, "maintainabl": 14, "maintenanc": 16, "maior": [6, 7], "mai\u00fascul": 6, "major": 6, "mak": [0, 1, 2, 5, 6, 8, 10, 12, 13, 14, 15, 16], "makefil": 2, "making": [6, 8], "man": 16, "manag": [2, 3, 4, 5, 6, 13, 14, 16], "managed": 0, "management": 12, "managing": 6, "mandatory": [5, 8], "maneir": [6, 14], "manipul": 6, "manipulat": 12, "manipulated": 12, "mann": [5, 15], "manual": [2, 3, 4, 6], "manually": [2, 4, 6, 10, 13, 14], "many": [0, 1, 2, 4, 5, 7, 8, 12, 14, 15, 16], "map": [4, 6, 10, 11], "map_non": 6, "mapping": [2, 6, 12, 15], "maps": [6, 10], "marc": [1, 6, 10, 13], "marca\u00e7\u00e3": [10, 13], "margin": [8, 16], "marked": 6, "massim": [0, 6], "mast": [1, 2, 14], "match": [2, 5, 6, 8, 10, 11, 12, 16], "matched": [4, 7, 10, 12], "matching": [7, 10, 12], "matem\u00e1t": 6, "material": 6, "math": 16, "matriz": 10, "matters": 15, "max": [11, 12, 16], "max_concurrent_runs": 16, "maximum": [5, 12], "maxip": 12, "maxlen": 12, "maxsiz": 12, "may": [2, 4, 5, 6, 8, 10, 12, 15, 16], "md": 1, "md5": 12, "mean": 15, "meaning": [6, 12, 13], "meanings": 12, "means": [1, 2, 3, 5, 6, 8, 12, 13, 15, 16], "mecan": [6, 8], "mechanism": [0, 5, 6, 8, 10, 13, 15, 16], "med": 1, "mediant": 8, "mei": 6, "melhor": [0, 1, 6, 11, 14, 17], "memb": [12, 13], "membership": [0, 5, 12, 13, 15], "memberships": 5, "membr": 13, "memcach": [0, 6], "memoiz": 17, "memory": [5, 6], "men": [1, 2, 5, 6], "menor": 6, "mensag": 14, "mensagens": [5, 6], "ment": 1, "mention": 5, "mentioned": [13, 16], "menu": [8, 12, 13], "menus": [8, 12], "mes": [6, 10], "mescl": 6, "mesm": [0, 1, 2, 4, 5, 8, 10, 11, 14], "messag": [2, 4, 5, 7, 8, 12, 14, 15, 17], "messed": 1, "mestr": 6, "met": [6, 8, 10], "metad": 6, "metadat": 6, "metatag": 10, "method": [4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "methods": [5, 7, 10, 12, 13, 14, 17], "mfa": 13, "micah": 0, "microsoft": [1, 13], "mid": 6, "middlewar": 5, "might": [7, 12], "migr": 6, "migrate_enabled": 6, "migrated": 6, "migrating": [6, 15], "migration": 6, "migrations": 6, "migra\u00e7\u00f5": 17, "min": [8, 12, 14], "min_length": 12, "mind": [4, 6, 7, 8, 12], "mindful": 6, "minimal": [5, 14, 17], "minimalist": [8, 15], "minimalist_pag": 8, "minimum": 12, "minip": 12, "minor": [8, 12, 15], "minsiz": 12, "minut": 12, "min\u00fascul": 6, "missing": [2, 13, 14], "mistak": 2, "mix": 8, "mkdir": [2, 4, 7, 14], "mm": 12, "mobili\u00e1ri": 5, "mod": [2, 4, 5, 6, 12, 13], "model": [0, 3, 7, 10, 12, 15, 16], "models": [4, 6, 7, 14, 15], "modern": [6, 13, 16], "modifi": 14, "modific": [2, 4], "modification": 12, "modifications": 2, "modified": [4, 12, 15], "modified_by": 6, "modified_on": 6, "modifiers": 7, "modify": [12, 14, 16], "modifying": [2, 6, 8], "modindex": 17, "modul": [0, 1, 2, 4, 6, 8, 10, 12, 13, 14, 15], "moment": [2, 6], "mong": 6, "mongodb": 6, "mongodbadapt": 6, "monoespac": 10, "monolithic": 0, "mont": 13, "month": 12, "mor": [0, 2, 4, 5, 6, 7, 8, 10, 12, 14, 15, 16], "moreov": 16, "most": [0, 4, 5, 6, 12, 13, 14, 15, 16], "mostr": [1, 4, 6, 14], "moth": 6, "mother_id": 6, "motor": 6, "mov": 6, "mssql1": 6, "mssql1n": 6, "mssql2": 6, "mssql2adapt": 6, "mssql3": 6, "mssql3adapt": 6, "mssql3n": 6, "mssql4": 6, "mssql4adapt": 6, "mssql4n": 6, "mssqladapt": 6, "mssqln": 6, "mtabl": 0, "much": [0, 1, 5, 6, 8, 12, 14, 15, 16], "mud": [4, 5, 6], "mudanc": 6, "muit": [0, 1, 4, 5], "mult": [1, 2, 6, 15], "multicast": 12, "multipl": [1, 2, 6, 8, 10, 12, 15, 16, 17], "multiprocess": 5, "multiselect": 12, "multius": 13, "must": [1, 2, 3, 4, 5, 6, 8, 10, 12, 13, 15, 16], "my": [5, 8, 10, 12, 13, 16], "my_app": 4, "my_id": 16, "my_password_fil": 2, "my_task": 16, "my_url_path": 15, "my_var": [5, 10], "myapp": [2, 4], "myclass": 10, "mycomponent": 16, "mycustomwidget": 12, "mydb": 6, "myerrors": 5, "myfield": 6, "myfil": 6, "myfixtur": 5, "myfunction": 2, "myidx": 6, "myobj": 6, "myobjnam": 6, "myord": 6, "myquery": 6, "myrecord": 6, "mysaltvalu": 12, "mysendgridsend": 16, "myset": 6, "mysideb": 8, "mysqladapt": 6, "mysqldb": 6, "mysqldv": 6, "mystyle": 12, "mytabl": 6, "myvalu": 6, "myvirtualfields": 6, "myvirtualfields1": 6, "myvirtualfields2": 6, "m\u00e1quin": [6, 10], "m\u00e1x": 6, "m\u00e1xim": 6, "m\u00e9d": 6, "m\u00e9di": 13, "m\u00e9tod": [4, 5, 6, 8, 14], "m\u00ednim": [5, 6], "m\u00f3dul": [0, 2, 5, 6], "m\u00faltipl": [0, 6], "n": [5, 6, 11, 16], "nad": [2, 4, 6], "nam": [2, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "named": 10, "nameonly": 6, "naming": 6, "nasc": 6, "natal": 6, "nativ": 6, "native_json": 12, "nav": 8, "navb": [8, 13], "naveg": 14, "navigat": 16, "navigation": [8, 16], "ndb": 6, "ne6fz": 8, "necess": [1, 2, 4, 6, 8], "necessary": [6, 8, 10], "necessit": 6, "necess\u00e1r": [1, 6], "necess\u00e1ri": [2, 4, 6], "need": [0, 1, 2, 5, 6, 8, 10, 12, 13, 14, 15, 16], "needed": [2, 4, 5, 6, 10, 12, 13, 16], "needs": [0, 4, 5, 6, 13, 15, 16], "neg": 6, "negated": 6, "negativ": [6, 12], "nega\u00e7\u00e3": 6, "neith": 12, "nel": 6, "nenhum": [6, 13], "ness": 6, "nest": [1, 6, 8, 10], "nested": [6, 8], "nested_select": 6, "network": [12, 13], "networks": [6, 12, 13], "nev": [6, 8, 12, 15, 16], "new": [0, 2, 4, 5, 6, 7, 8, 10, 11, 12, 13, 14, 15, 16], "new_app": [8, 10], "new_password": 16, "new_sidec": 16, "newlin": [6, 12], "newly": 6, "next": [1, 5, 6, 8, 12, 16], "nginx": 2, "nic": [0, 16], "nicozanf": 2, "nid": 6, "niss": 6, "no_backslash_escap": 6, "no_tabl": [12, 16], "nod": [4, 16], "nom": [2, 4, 5, 7, 10, 12, 13, 14], "nomeaplic": 13, "non": [2, 4, 5, 6, 7, 10, 12, 14, 15, 16], "nor": [2, 12], "norm": 6, "normal": [4, 5, 6, 8, 12, 14, 16], "normaliz": 6, "normalized": 6, "normally": [2, 6, 8, 10, 12, 14], "northwind": 1, "nosqladapt": 6, "noss": [1, 4, 5, 6], "not": [0, 1, 2, 4, 5, 7, 8, 10, 12, 13, 14, 15, 16], "not_authorized": 13, "notation": 10, "nota\u00e7\u00e3": [6, 10], "noted": 8, "nothing": [2, 5, 6, 12, 16], "notic": [2, 4, 5, 6, 8, 10, 12, 13, 14, 15, 16], "notnull": 6, "notset": 2, "nov": [0, 1, 2, 3, 4, 14], "novaaplicaca": 4, "now": [0, 4, 5, 6, 12, 14, 16], "nowadays": 1, "nul": 6, "null": [6, 7, 12, 16], "numb": [2, 5, 6, 8, 12, 16], "number_workers": 2, "numbers": 12, "numerical": 12, "num\u00e9r": 6, "nunc": [5, 6], "n\u00e3": [0, 1, 2, 3, 4, 5, 6, 8, 10, 13, 14], "n\u00edvel": [6, 11], "n\u00famer": [4, 6, 11, 14], "oauth": 13, "oauth2": [0, 5], "oauth2discord": 13, "oauth2facebook": 13, "oauth2googl": 13, "obj": [6, 8], "object": [0, 4, 5, 6, 7, 8, 10, 12, 13, 15, 17], "objects": [0, 4, 5, 6, 10, 12, 14, 15, 16], "objet": [0, 5, 6, 8, 10, 11], "obras": 6, "obrigat\u00f3ri": 6, "observ": [4, 6, 8], "obsolet": 6, "obtain": [2, 13, 16], "obtained": 6, "obter": [4, 6], "obtid": [2, 6], "obvi": 6, "obvious": [7, 8, 13], "obviously": 12, "ocasional": 6, "occasionally": 12, "occur": [2, 12, 16], "occurring": 2, "occurs": 12, "ocorr": [4, 6, 8], "ocult": [6, 12], "odd": [6, 8], "of": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "off": [0, 2, 4, 14, 16], "official": [0, 12, 16], "offs": 6, "offset": [6, 7], "oficial": 6, "often": [6, 13, 16], "ok": [10, 15], "old": [2, 5, 12, 15], "older": 12, "olhand": 6, "ol\u00e1": 8, "ombott": [0, 4, 15], "omit": 2, "omitted": 2, "on": [0, 1, 3, 4, 5, 6, 7, 8, 12, 13, 14, 15, 16], "on_delete_action": 6, "on_error": 5, "on_fals": 5, "on_request": 5, "on_success": 5, "once": [1, 2, 5, 6, 12, 13, 16], "onclick": 16, "onde": [2, 6, 7, 8, 12], "ondelet": 6, "one": [0, 2, 4, 5, 6, 7, 8, 12, 13, 14, 16], "ones": [2, 5, 7, 12, 15], "onion": 5, "onkeydown": 16, "onlin": [1, 6], "onload": 16, "only": [1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "onvalidation": 12, "opacity": 16, "opcion": [6, 10], "opcional": [4, 6, 10, 12], "open": [1, 2, 4, 5, 6, 10], "opening": 5, "oper": [0, 3, 11, 17], "operat": 12, "operation": [6, 13], "operationalerror": 12, "operations": [5, 6], "operator": [5, 6, 12], "oposi\u00e7\u00e3": 10, "opost": 6, "opposed": 5, "opposit": 5, "oprow": 6, "optimized": 6, "option": [2, 3, 5, 6, 12, 13, 16], "optional": [2, 5, 6, 7, 8, 12, 13, 14, 15, 16], "optionally": [0, 2], "options": [2, 6, 7, 10, 13, 15, 16], "opt\u00e1m": 6, "op\u00e7\u00e3": [3, 4, 6, 8, 10], "op\u00e7\u00f5": [6, 17], "or": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "oracl": 6, "oracleadapt": 6, "ordem": 6, "order": [1, 2, 4, 5, 6, 7, 10, 12, 14, 15], "order_it": 6, "orderby": [12, 13, 14, 16], "ordered": 10, "ordereddict": 6, "org": [2, 4, 7, 10, 16], "organiz": 6, "organized": 4, "orig": [2, 11], "origin": 6, "original": [6, 8, 10, 12], "orm": 6, "other": [0, 1, 2, 4, 5, 6, 7, 8, 10, 13, 14, 15, 16], "other_pag": [12, 16], "otherfield": 6, "others": [0, 6, 15], "othertabl": 6, "otherwis": [5, 6, 8, 12, 13, 14], "otimiz": 6, "oufil": 6, "our": [0, 1, 2, 5, 6, 10, 12, 16], "out": [0, 1, 2, 5, 8, 12, 16], "outlined": [4, 5], "output": [1, 2, 5, 8, 12, 16], "output_styl": 4, "outr": [1, 2, 4, 5, 10, 11, 13, 14, 17], "outsid": [0, 5, 6, 12, 14, 15, 16], "ov": 6, "over": [8, 14, 16], "overkill": 13, "overrid": [4, 6, 8, 13, 14, 15, 16], "override_cl": 14, "override_styl": 14, "overriding": 16, "overview": 17, "overwritten": [5, 15], "own": [4, 5, 6, 8, 12, 13, 14, 15, 16], "owner": [6, 12], "owner_id": 6, "owner_id1": 6, "owner_id2": 6, "owners": 12, "ownership": 6, "owns": 6, "p": [2, 8, 12], "p10n": 11, "packag": [0, 6, 10], "padded": [8, 15], "padding": 16, "padroniz": 6, "padr\u00e3": [0, 2, 4, 5, 8, 10, 14], "padr\u00f5": [4, 6, 10], "pag": [1, 3, 4, 5, 6, 10, 12, 13, 14, 15, 16, 17], "page_head": 8, "page_left_menu": 8, "page_scripts": 8, "pagin": [6, 14], "pai": 6, "painel": [0, 2, 3], "paint": [4, 12], "painting": 4, "pairs": 10, "palavr": [8, 10, 11], "pam": [0, 5], "pam_plugin": 13, "pamplugin": 13, "papel": 2, "par": [0, 1, 2, 3, 4, 5, 10, 11, 12, 13, 14, 16, 17], "paragraph": [5, 10, 12, 14], "paramet": [1, 2, 4, 5, 6, 13, 14, 16], "parameters": [2, 6], "params": 16, "parec": [5, 6], "parent": [2, 6, 8, 16], "park": [7, 14], "pars": [5, 6, 12, 13], "parsed": 6, "parsemodul": 4, "part": [4, 10, 15], "partial": [4, 6, 15], "particip": 6, "participat": 1, "particul": [0, 1, 6, 12, 14, 15, 16], "particular": 6, "particularly": 6, "parts": 12, "party": [0, 5], "par\u00e1graf": [1, 10], "par\u00e2metr": [5, 14], "par\u00eantes": 6, "pass": [4, 5, 6, 8, 10, 12, 13, 14, 15, 16], "passed": [2, 4, 5, 6, 10, 12, 13, 14, 16], "passing": [5, 6, 10, 12], "passphras": 5, "password": [2, 6, 8, 12, 13, 15, 16], "password_fil": 2, "passwords": 12, "passwordwidget": 12, "past": [2, 4], "path": [2, 4, 5, 6, 7, 11, 12, 14, 15, 16], "path_t": 2, "pattern": 7, "patterns": 7, "paus": 2, "payment": 6, "payroll": 5, "pbkdf2": 12, "pc": 3, "pdf": [1, 12], "pdkdf2": 2, "pec": [5, 6], "ped": [2, 4, 5, 6, 14], "pedac": 8, "peg": 6, "pegadinh": 17, "pel": [1, 4, 5, 6, 8, 10, 11, 13], "pens": 6, "per": [5, 7, 14], "perahps": 5, "percentual": 6, "perd": [1, 2, 6], "perfect": 0, "perfectly": 14, "perfil": [0, 13], "perform": [5, 6, 12, 13], "performanc": [0, 5, 6, 15], "performing": 6, "performs": 12, "pergunt": 6, "period": 16, "periodic": 16, "permanec": 6, "permission": [5, 13], "permissions": [0, 5, 6, 13, 15], "permiss\u00e3": [5, 6, 13], "permit": [0, 3, 5, 6, 8, 10, 13, 14], "permitted_tags": 10, "persist": 5, "persistent": [6, 13], "person": [6, 7, 12, 14], "personag": 6, "personagens": [4, 6], "personal": 2, "personaliz": [0, 2, 17], "persons": 12, "persons_and_things": 6, "perspectiv": 0, "pertenc": 6, "pertencent": 6, "pesquis": [2, 3, 6, 14], "pesso": 6, "pet": [6, 7, 14], "philip": 6, "phon": [12, 16], "photograph": [7, 14], "physics": 13, "pick": [5, 13], "picked": 4, "picks": 5, "piec": [0, 12], "pierr": 0, "pip": [0, 1, 6], "pirsch": 0, "piscin": [4, 6], "piu": 5, "pixels": 12, "plac": [1, 5, 6, 8, 12, 14, 16], "placehold": [12, 16], "placeholders": 6, "placing": 14, "plain": 16, "plan": [1, 16], "plataform": 17, "platform": [0, 1], "play": 16, "playing": 0, "pleas": [5, 6], "plug": 5, "plugin": [5, 12, 13, 14, 16], "plugins": [12, 16], "plural": 11, "pluraliz": [0, 4, 5, 14, 16, 17], "pluralization": 15, "plus": [6, 8, 13, 14], "pm": 12, "png": [10, 12], "pod": [0, 1, 2, 4, 5, 6, 7, 8, 10, 11, 13, 14], "point": [4, 5, 6, 12, 15, 16], "pointing": [2, 3, 8], "points": [6, 7, 12, 14], "polic": 17, "policy": 7, "pollut": 5, "pol\u00edt": 0, "pont": 6, "pool": 5, "pool_connection": 6, "pool_siz": [5, 6], "pooling": 6, "poor": 16, "pop": 16, "popul": [0, 6], "porqu": [2, 4, 5, 6, 8, 11], "port": [0, 2, 3, 5, 6, 15], "portability": 6, "portabl": 6, "portant": [2, 4, 5, 6, 10], "ports": 2, "por\u00e7\u00f5": 14, "posicion": 10, "position": 5, "positional": 10, "posi\u00e7\u00e3": [5, 10], "possibil": 6, "possibl": [4, 5, 6, 8, 12, 14, 15, 16], "possibly": 6, "poss\u00edv": 6, "poss\u00edvel": [4, 6], "post": [4, 6, 7, 10, 12, 13, 14, 15, 16], "post_action_buttons": 14, "post_text": 6, "post_vars": [7, 15], "post_writabl": 7, "posted": 7, "postel": 11, "posterior": 5, "postfix": 15, "postgr": 6, "postgreboolean": 6, "postgrenew": 6, "postgrepsyc": 6, "postgrepsycoboolean": 6, "postgrepsyconew": 6, "postgres2": 6, "postgres3": 6, "postgres_nonreserved": 6, "postgresql": [2, 6], "postgresqladapt": 6, "postprocessing": 15, "posts": 6, "potentially": 2, "pouc": [5, 6], "pow": [2, 6, 16], "powerful": [7, 13, 15], "powers": 7, "pprint": 6, "pr": 1, "practic": [8, 12], "practical": [6, 12, 15, 17], "pre": [2, 4, 5, 14], "pre_action_buttons": 14, "precau\u00e7\u00e3": 2, "preced": [5, 6, 8], "preceded": [6, 12], "precedent": 6, "preceding": 7, "precious": 14, "precis": [1, 2, 4, 5, 6, 14], "predefin": 8, "predefined": [12, 16], "predetermined": 15, "preench": 6, "preenchiment": 6, "pref": [2, 16], "prefer": 10, "preferenc": 5, "preferred": [5, 6], "prefix": [2, 4, 6, 7, 8, 12, 15], "preguic": 15, "prelimin": 1, "preocup": 6, "prepend": [12, 16], "prepend_schem": 12, "prepended": [12, 15], "prepending": 12, "prepends": 4, "preprocessing": 15, "prerequisit": [2, 5], "presenc": [5, 6], "present": [2, 6, 8, 12, 13], "preserv": [0, 5], "preserved": 5, "press": [4, 14], "pression": 3, "prest": 10, "pretend": 6, "pretty": [6, 15], "prevent": [6, 10, 12, 16], "prevented": 6, "preventing": 5, "prevents": [2, 5, 16], "previ": [6, 12], "previous": [5, 8, 10, 12, 16], "previously": [5, 6, 12], "prim": [5, 12], "primarily": 14, "primary": [6, 8, 13], "primeir": [6, 8, 13, 17], "princip": 0, "principal": [1, 5, 6, 17], "princ\u00edpi": [6, 17], "print": [4, 6, 10, 11, 13, 14, 15, 16], "printed": 4, "privat": [5, 12], "probability": 12, "probl": [0, 6, 8, 14], "problem": [1, 6], "problems": [6, 13, 16], "proc": [13, 16], "proced": 17, "procedur": 2, "process": [2, 4, 5, 6, 8, 10, 12, 13, 14, 15, 16], "processed": [5, 6, 8, 12], "processing": [5, 6, 8, 12, 16], "procur": [1, 6], "produc": [6, 10, 12, 13], "product": [6, 16], "product_record": 16, "production": [2, 4], "products": 6, "produz": [2, 5, 6, 8, 10], "produ\u00e7\u00e3": 0, "professor": 13, "profil": [8, 13, 15], "progr": [1, 2, 3, 10], "program": [1, 3, 6, 8], "programmatically": 10, "programming": [1, 6, 8, 16], "programs": [1, 2, 12], "project": [0, 2, 4, 5, 6], "project_nam": 2, "projet": [0, 2], "prompt": [2, 4, 6], "pront": 6, "prop": [5, 6, 14], "properly": 4, "properti": [6, 12], "propriedad": 6, "propriet\u00e1r": 6, "propriet\u00e1ri": 6, "protocol": 3, "prototyp": 16, "provavel": [4, 5, 6], "proveit": 6, "provid": [0, 4, 5, 6, 8, 10, 12, 13, 14, 15, 16], "provided": [5, 6, 8, 10, 12, 14], "providing": [0, 14, 15], "provoc": 6, "prudent": 6, "pr\u00e1tic": [0, 6, 7], "pr\u00e9": [10, 14, 17], "pr\u00f3pr": [13, 14], "pr\u00f3pri": [6, 14], "pr\u00f3xim": [2, 6], "pseud": 6, "psycopg2": 6, "public": [4, 6], "pud": 2, "pull": 1, "punycod": 12, "pur": 6, "purpos": [0, 6, 10, 12, 13, 15], "put": [5, 7, 12, 16], "put_writabl": 7, "putting": 4, "pux": 6, "pwd": 6, "py": [1, 2, 4, 5, 6, 7, 10, 11, 12, 13, 14, 15, 16], "py4web": [2, 3, 4, 5, 7, 8, 10, 12, 13, 14], "py4web_filesyst": 6, "py4web_wsg": 2, "pyc": 8, "pydal": [0, 2, 3, 5, 6, 7, 12, 13, 14, 15, 16], "pyfilesyst": 6, "pyinstall": 2, "pymong": 6, "pymysql": 6, "pyodbc": 6, "pypi": 2, "pypyodbc": 6, "pysqlite2": 6, "pytds": 6, "python": [0, 2, 4, 5, 6, 8, 10, 11, 12, 13, 14, 15, 16], "python2": [2, 15], "python3": [1, 2], "pyweb": 15, "p\u00e1gin": [8, 10, 14, 17], "p\u00f3s": 14, "p\u00fablic": 6, "q": [2, 6, 14], "qua": [0, 6], "quadr": [0, 1, 6], "quaisqu": [6, 12], "qualified": 6, "qualqu": [1, 2, 4, 5, 6, 7, 8, 13], "quand": [1, 4, 6, 8, 14], "quant": 6, "quantity": 6, "quebr": 0, "qued": 14, "queir": 5, "quer": [2, 4, 5, 6, 10], "queri": [6, 7, 14, 15, 16], "queried": 7, "query": [4, 5, 7, 10, 12, 14, 15, 16], "query1": 6, "query2": 6, "queryselector": 16, "queryselectorall": 16, "querystring": 14, "questions": [1, 2], "quest\u00e3": 6, "quick": [1, 12], "quickly": [2, 12, 14], "quickstart": 16, "quiet": 2, "quirk": 5, "quis": [4, 6], "quit": [1, 2, 5, 7, 8, 12, 14], "quot": [2, 10], "quote_minimal": 6, "quote_nonnumeric": 6, "quotech": 6, "r": [2, 6, 12], "rac": 12, "radi": [10, 12], "radiowidget": 12, "radius": 16, "rais": [5, 12, 13, 15], "raised": 5, "ram": [5, 6], "randint": [8, 13], "random": [6, 8, 12, 13, 16], "rang": [4, 6, 8, 13, 15], "rapid": [0, 16], "rar": 6, "rarely": 6, "rath": [6, 8, 12, 16], "raw": 17, "raz\u00f5": 6, "rb": 6, "re": [0, 1, 2, 4, 5, 6, 8, 10, 12, 13, 14, 15, 16], "rea": 6, "reach": 2, "react": 16, "reactivity": 16, "read": [1, 4, 5, 6, 7, 14, 16], "readability": 7, "readabl": [5, 6, 14, 15], "readm": [1, 12], "readonly": [2, 12, 16], "ready": 2, "reagrup": 0, "real": [2, 4, 7, 8, 12], "real_identity": [6, 7], "realiz": [3, 4, 6], "really": [1, 4], "realment": 6, "reaping": 16, "reason": [2, 5, 6, 14, 15], "reasons": [2, 7], "rebuilt": 6, "rec_id": 7, "receb": [6, 8], "recent": [2, 3, 6, 12, 14], "recently": 5, "recereived": 16, "recip": 2, "reclam": 6, "recogniz": 4, "recognized": 6, "recolh": [7, 14], "recomec": 6, "recomend": 6, "recommend": [1, 5, 16], "recommended": [6, 12], "reconstru": 6, "record": [7, 12, 13, 15, 16], "record_id": [7, 16], "recorded": 12, "records": [6, 7, 12, 13, 14, 16], "recorrent": 6, "recovered": 12, "recreat": 6, "recreated": 6, "recup": 6, "recuper": [4, 6], "recurs": [2, 8, 17], "recursively": 8, "recycl": 6, "rec\u00e9m": [4, 6, 11], "red": [0, 3, 4, 6, 8, 10, 12, 17], "redefin": 5, "redefini\u00e7\u00e3": 6, "redesign": 0, "redirecion": [4, 13, 14], "redirect": [4, 5, 12, 13, 14, 16], "redirected": [5, 16], "redirection": [5, 12, 15], "redirects": [5, 13], "reduc": [0, 5, 16], "reduced": 0, "redundant": 6, "reescrev": 6, "reescrit": 6, "ref": [3, 5, 6, 10, 12, 13, 17], "refer": [6, 7], "referenc": [1, 5, 6, 7, 8, 10, 12, 14, 16], "referenced": [6, 7], "referenced_by": 7, "referencing": 6, "referim": 6, "referred": [6, 7], "refers": 7, "reflected": 1, "reflet": 6, "reforc": 6, "refresh": 14, "regex": [7, 10, 12], "regexlib": 12, "regist": [0, 5, 6, 8, 13, 14, 15, 16], "register_plugin": 13, "register_task": 16, "register_vue_component": 16, "registered": [5, 13], "registers": 5, "registr": [3, 4, 12, 13, 14], "registration": [4, 12], "registration_stamp": 12, "regr": [4, 5], "regul": [0, 2, 4, 6, 7, 8, 11, 12, 14, 15, 16], "reimplementation": 16, "reinic": 6, "reinstal": 2, "reinstall": 2, "reinstat": 6, "rejected": 12, "rejects": 12, "rel": [8, 14], "relacion": 6, "relat": 6, "related": [5, 6], "relational": 6, "relations": 17, "relationships": 6, "relativ": [4, 15], "rela\u00e7\u00e3": 10, "rela\u00e7\u00f5": 6, "releas": 2, "released": 0, "relev": 6, "reload": [2, 3, 4, 5, 12], "reloaded": [3, 4, 16], "reloading": [2, 4, 5], "reloads": [4, 5], "rely": [0, 4, 6], "rem": 5, "remain": [6, 12], "remains": 0, "rememb": [5, 6], "remembered": 5, "remote_addr": [5, 13], "remov": [2, 4, 6, 10, 12, 13], "removal": 12, "removed": [0, 6, 10, 12], "removing": 6, "remo\u00e7\u00e3": 6, "renam": 1, "rend": [5, 6, 12, 14, 15, 16], "rendered": [5, 7, 8, 12, 14, 15, 16], "rendering": [8, 10], "renderiz": 10, "renders": 12, "reno": 8, "renom": 7, "reopening": 5, "repackaging": 0, "repeated": 12, "repeti\u00e7\u00e3": 6, "replac": [6, 8, 10, 14, 16], "replaced": [8, 10, 12, 16], "replacing": 12, "replicat": [1, 5], "report": 8, "reported": 4, "repository": [1, 2, 3], "reposit\u00f3ri": 2, "repr_row": 6, "represent": [8, 10, 12], "representation": [6, 10, 16], "representational_state_transf": 7, "represented": [12, 16], "representing_field": 12, "represents": [0, 6], "requ": [0, 5, 6, 12, 13, 14, 15, 16], "request": [0, 1, 2, 5, 6, 7, 12, 13, 14, 15, 16], "request_body": 16, "request_reset_password": 13, "requests": [1, 4, 5, 15], "requir": [2, 5, 6, 12, 13], "required": [4, 5, 6, 7, 12, 16], "requirement": [12, 16], "requirements": [0, 2, 12], "requires_": 15, "requires_login": 15, "requires_membership": [5, 13], "requiring": [2, 15], "requisit": [6, 17], "res": 16, "reserv": 11, "reserved": [6, 12], "reset": 6, "reset_password": 13, "resgat": 6, "resourc": [6, 13], "respect": [6, 12, 14], "respectively": [6, 12], "respons": [4, 5, 6, 8, 15, 16, 17], "responsibility": 6, "responsibl": [14, 16], "respost": [5, 8], "ressalv": 6, "restabelec": 6, "restap": [0, 3, 17], "restart": [2, 4, 5, 6, 14], "restarting": 6, "restaur": 6, "restful": [7, 13], "restrict": [5, 7, 12, 16], "restri\u00e7\u00e3": 6, "restri\u00e7\u00f5": [0, 6], "restructuredtext": 1, "result": [1, 4, 6, 7, 8, 12, 14, 16], "resulting": [8, 12, 16], "results": [6, 8, 12, 14], "ret": 6, "retain": 6, "retorn": [5, 8, 10], "retribu": 10, "retriev": [5, 6, 16], "retrieval": 6, "retrieved": 15, "return": [4, 5, 6, 7, 10, 12, 13, 14, 16], "returned": [5, 6, 7, 8, 10, 12, 16], "returning": 5, "returns": [5, 6, 7, 10, 12, 13, 15, 16], "reutiliz": [2, 6], "revers": [5, 6], "revers\u00e3": 4, "revert": 6, "rfc": 12, "rid": 6, "riding": 8, "right": [5, 6, 8], "rights": 2, "road": 16, "robust": 16, "rocket": 15, "rocket3": [2, 15], "rocketserv": 2, "rodap": 10, "rol": [5, 10], "roll": 6, "rollback": 16, "rolls": 5, "root": [6, 8, 13, 14], "ror": 6, "rosc": 5, "rot": [3, 14], "rotul": 6, "rout": [2, 5, 14, 15, 16], "routing": [0, 2, 4, 15], "rov": 6, "row": [12, 14, 16], "rows": [10, 12, 14, 15], "rows1": 6, "rows2": 6, "rows3": 6, "rows_list": 6, "rows_per_pag": 14, "rpc": 6, "rst": 1, "rul": [8, 12, 14], "run": [1, 3, 4, 6, 8, 13, 16], "run_in_transaction": 6, "running": [1, 2, 5, 16], "runs": [2, 4, 13, 15, 16], "r\u00e1di": 10, "r\u00e1p": [0, 6], "r\u00f3tul": [6, 10, 14], "s": [0, 1, 2, 4, 5, 7, 8, 10, 11, 12, 13, 14, 16], "s3": 6, "s_": [12, 16], "s_autocomplet": 16, "s_autocomplete_results": 16, "s_down_key": 16, "s_search": 16, "sab": [1, 2, 6, 8], "saf": [1, 6, 12, 14, 15], "safar": 16, "safely": [1, 14], "safety": 16, "said": 7, "sair": 13, "sak": 6, "salt": [1, 12], "salv": [4, 6, 11], "sam": [0, 2, 5, 6, 7, 8, 12, 13, 15, 16], "same_sit": 5, "saml": 13, "saml2": 0, "sampl": 13, "san": 4, "sandbox": 16, "sanitiz": [5, 10, 12, 15], "sanitized": 12, "sant": 1, "sap": 6, "sapdb": 6, "sapdbadapt": 6, "sass": 4, "sass_compil": 4, "sav": [1, 5, 6, 11, 12], "saved": [2, 5, 6, 12], "say": 13, "sa\u00edd": [2, 4, 6, 8, 10], "scaffold": [2, 4, 16], "scaffold_zip": 2, "scaffolding": [2, 4, 5, 6, 8, 12, 15, 16], "scal": [5, 8], "scan": 6, "schaf": 1, "schedul": 17, "scheduled": 16, "scheduled_for": 16, "schem": [6, 12], "scheuled_for": 16, "school": 13, "scor": 16, "score_input": 16, "scratch": 4, "script": [2, 5, 8, 12, 16], "scripting": 10, "scripts": [2, 8, 10], "sdk": 2, "seamlessly": 8, "search": [0, 12, 13, 14, 17], "search_button_text": 14, "search_form": 14, "search_queri": 14, "search_text": 14, "search_valu": 16, "searchabl": 6, "searched": [10, 14], "searching": [6, 10], "second": [6, 10, 12, 13, 15], "seconds": [5, 12], "secret": [5, 13], "secs": 16, "section": [2, 4, 6, 8, 12, 13], "sections": 6, "secur": [0, 12], "securely": 2, "security": [0, 2, 6, 7, 13], "see": [0, 1, 3, 4, 5, 6, 8, 10, 12, 13, 14, 16], "seem": 6, "seen": [0, 5, 7, 10, 12, 13, 14, 16], "seg": 4, "segment": 4, "segred": 13, "segu": [2, 4, 5, 6, 8], "seguint": [2, 4, 5, 6, 8, 10, 11, 12, 13, 14], "segund": 6, "segur": [0, 5], "seguranc": [2, 5, 6, 10], "seis": 6, "sej": [4, 6], "seleccion": 6, "selecion": [3, 6], "select": [4, 5, 7, 11, 12, 13, 14, 15, 16, 17], "selected": [3, 4, 7, 10, 12, 14, 16], "selected_elements": 16, "selected_id": 14, "selectedindex": 16, "selecting": 6, "selection": [12, 14], "selections": 12, "selector": [10, 16], "selector1": 10, "selector2": 10, "selectorn": 10, "selectwidget": 12, "selec\u00e7\u00e3": 6, "sele\u00e7\u00e3": [6, 10], "self": [2, 5, 6, 10, 12, 14, 16], "semantic": [12, 13], "semelh": [0, 4, 5, 6, 10], "sempr": [6, 8], "send": [2, 6, 12, 13, 16], "send_two_factor_email": 13, "sendgrid": 16, "sendgrid_api_key": 16, "sendgridapiclient": 16, "sending": 17, "sendmail": 16, "sendmail_task": 16, "sends": 13, "senh": [0, 2, 3, 5, 6, 13], "sens": [0, 6, 12], "sensitiv": [5, 12], "sens\u00edvel": 6, "sent": [5, 6, 13, 16], "sen\u00e3": 6, "separ": [6, 14], "separat": [6, 12, 13, 16], "separated": [2, 5, 6, 14, 16], "separating": [8, 12], "separator": 12, "sequenc": [5, 6], "sequencial": 6, "sequ\u00eanc": 6, "seq\u00fcenc": 6, "seq\u00fc\u00eanc": 6, "ser": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 13, 14], "seri": 1, "serializ": [4, 6, 8, 10], "serializabl": [0, 5, 6], "serialized": [5, 6, 10, 12], "serv": [0, 2, 3, 4, 7, 8, 13, 15, 16, 17], "served": [2, 6], "server_addr": 6, "servers": [2, 6], "serversid": 16, "servidor": [0, 4, 5, 6], "serving": 16, "ser\u00e3": [4, 6, 10], "session": [0, 2, 4, 6, 10, 12, 13, 14, 15, 16, 17], "session_app1": 5, "session_secret_key": 5, "sessions": [0, 6, 15], "sess\u00e3": [4, 17], "sess\u00f5": 5, "set": [0, 2, 5, 7, 8, 10, 11, 14, 15, 16], "set_attribut": 6, "set_encoding": 6, "set_head": 6, "set_password": 3, "setinterval": 16, "sets": [2, 5, 6, 12], "setting": [2, 4, 5, 6, 12, 14], "settings": [1, 4, 5, 6, 10, 13, 15, 16], "setup": [1, 3, 4, 13, 16], "setvirtualfields": 6, "severity": 6, "se\u00e7\u00e3": 6, "se\u00e7\u00f5": 6, "sf": 16, "sftp": 6, "sg": 16, "sh": 16, "sha512": [8, 12], "shar": [5, 6, 15], "shared": 5, "shell": 10, "ships": 8, "sho": 6, "shopping": 5, "short": [12, 16], "shortcut": [6, 8, 12], "should": [1, 2, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "show": [2, 5, 6], "show_id": 14, "showcas": 6, "showed": 13, "showing": 14, "shown": [2, 6, 12, 13], "shows": [4, 8, 12, 13], "shutil": 6, "si": [6, 14], "sid": [6, 16, 17], "sideb": 8, "sidebar_enabled": 8, "sidebar_menu": 10, "sidec": 16, "sign": [5, 8, 13], "signatur": [5, 6, 7, 10, 12, 16], "signed": [2, 5, 12], "signed_url": 5, "signif": [5, 6, 7], "signific": [6, 8], "significant": 8, "signing": 5, "signing_inf": 12, "signs": 5, "sim": 6, "simbol": 2, "simb\u00f3l": 4, "simil": [0, 12, 15], "similar": [6, 10], "similariti": 15, "simpl": [1, 2, 4, 5, 6, 7, 8, 10, 12, 13, 14, 16, 17], "simple_query": 16, "simples": [4, 6, 11], "simplest": 2, "simplicity": [6, 16], "simplific": 6, "simplified": [0, 4, 8], "simply": [2, 4, 5, 6, 8, 12, 16], "simultan": 6, "simult\u00e2n": 6, "sinal": 6, "sinc": [0, 4, 5, 7, 8, 14, 15], "singl": [2, 5, 6, 7, 8, 12, 13, 14], "singleton": [5, 15], "sintax": [4, 6, 10, 13, 17], "sint\u00e1t": 5, "sistem": [0, 2, 5, 6], "sit": [1, 2, 4, 5, 6, 10, 14, 16], "situa\u00e7\u00e3": 6, "siz": [5, 8, 12], "skip": [5, 16], "slash": [1, 4, 5, 13], "sleep": 16, "sleep_tim": 16, "slick": 0, "slow": [6, 16], "slug": 12, "small": [5, 12], "sms": 16, "smtplib": 16, "snippets": 6, "so": [2, 5, 6, 8, 10, 12, 13, 14, 15, 16], "soap": 10, "sob": [4, 6], "sobr": [0, 8], "sobrecarg": 6, "sockets": 16, "solicit": [0, 6], "solt": 6, "solution": [0, 2, 16], "solu\u00e7\u00e3": [1, 6], "som": [0, 1, 2, 4, 5, 6, 7, 8, 10, 12, 13, 15, 16], "some_condition": 8, "some_form": 12, "some_valu": 6, "somefield": 6, "somefil": 6, "soment": [2, 4, 6, 8], "somepath": 5, "sometabl": 6, "something": [6, 7, 8, 10, 12, 14, 16], "sometim": [5, 6, 8, 10, 12], "somevalu": 6, "somewhat": 12, "somewher": [5, 6], "soon": [8, 16], "sophisticated": 15, "sort": 12, "sorted": 14, "sorting": 12, "sourc": [1, 2, 3, 4, 6, 12, 16], "source1": 12, "south": 1, "sp": 6, "spac": [6, 8, 12, 14], "span": [4, 15], "spatialit": 6, "speaking": 5, "special": [0, 5, 6, 8, 13, 15, 17], "specialization": 6, "specials": 12, "specific": [2, 5, 6, 8, 10, 12, 13, 15, 16], "specifically": [5, 6, 12, 16], "specifications": 7, "specified": [5, 6, 8, 10, 12, 13, 14, 15, 16], "specify": [2, 4, 5, 6, 7, 12, 13, 14, 16], "specifying": 10, "speed": [7, 8], "sphinx": 1, "spiderman": [7, 14], "spin": [0, 4], "spirit": 7, "split": [6, 7, 8, 12], "split_emails": 12, "sql": 17, "sql_mod": 6, "sqladapt": 6, "sqlcustomtyp": 6, "sqlform": [0, 12, 15], "sqlforms": 12, "sqlit": [1, 5, 7, 13, 14, 16], "sqlite3": 6, "sqliteadapt": 6, "squar": 8, "src": [5, 6, 8, 10, 12, 16], "ss": 12, "ssl": 2, "ssl_cert": 2, "ssl_key": 2, "sslcert": 6, "sslkey": 6, "sslmod": 6, "sslrootcert": 6, "sso_id": [5, 13], "stabl": 2, "stand": 12, "standard": [1, 2, 3, 6, 7, 13, 14, 15, 16, 17], "standards": [12, 14], "stands": 10, "start": [1, 2, 3, 4, 5, 6, 10, 12, 13, 14, 16], "start_impersonating": 13, "started": 16, "starting": [2, 4, 12], "starts": [0, 3, 5, 8, 15], "startup": [6, 15], "stat": [5, 7, 15, 16], "stated": 5, "stateful": 5, "stateless": [5, 16], "statement": 8, "statements": [8, 12], "static": [1, 4, 8, 10, 15], "static_dev": 4, "status": [7, 16], "status_cod": 16, "stderr": [2, 16], "stdout": [2, 16], "steil": [0, 1, 14], "step": [13, 15], "step1": 5, "step2": 5, "step3": 5, "step_completed": 5, "stepping": 16, "steps": 2, "still": [5, 6, 10, 12, 14, 15], "ston": 14, "stop": [2, 13], "stop_impersonating": 13, "stor": [5, 6, 12, 13, 16], "storag": [5, 6, 7, 14], "stored": [0, 5, 6, 12, 13, 15, 16], "stored_it": 6, "stored_item_archiv": 6, "storing": 5, "story": 0, "str": [2, 5, 6, 10, 12, 15, 16], "stre": [5, 6], "streaming": [4, 15], "strength": 7, "strict": 12, "strictly": [4, 6, 16], "string": [4, 5, 6, 7, 10, 11, 12, 14], "stringi": 6, "stringlistproperty": 6, "strings": [10, 12, 14], "strip": 12, "stripped": [2, 15], "strong": [0, 10, 13], "strongly": [1, 5, 12, 14], "structur": [1, 4, 6, 13, 14, 15, 16, 17], "stuck": 2, "students": 2, "studi": 1, "study": 1, "stuff": [12, 14], "style": [4, 6, 8, 12, 16, 17], "styles": 14, "stylesheet": [8, 14], "styling": 14, "sub": 6, "subcl": 6, "subclassing": 12, "subconjunt": [0, 6], "subfold": 6, "subfolders": [5, 6], "subheadings": 10, "subject": [6, 7, 13, 16], "sublinh": 6, "submet": 12, "submission": [12, 16], "submit": [1, 5, 6, 10, 12, 14], "submitted": [14, 16], "submitting": 13, "subm\u00f3dul": 0, "subnet": 12, "subnets": 12, "subpast": 4, "subqueri": 16, "subset": 12, "subse\u00e7\u00e3": 6, "substitu": [0, 2, 6, 8, 10], "substitui\u00e7\u00f5": 14, "substitutions": 8, "substitu\u00edd": 6, "substring": [6, 12], "succeeded": 0, "success": [5, 7, 16], "successful": [0, 13], "successfully": 13, "suced": 6, "sucess": [4, 6], "such": [6, 10, 12, 14, 15], "sud": [2, 13], "suffered": 0, "suffers": 13, "suficient": [6, 14], "suger": [1, 6], "sugest\u00f5": 17, "suggest": [1, 12], "sugiz": 0, "sup": 7, "super": 6, "superher": [6, 7, 12, 14, 16], "superhero": 7, "superior": 11, "superman": [6, 7, 12, 14], "superpotent": 7, "superpow": [6, 7], "superseeded": 6, "supond": [2, 6], "suponh": 6, "supor": 6, "suport": [0, 11, 17], "supplied": 10, "support": [1, 2, 6, 12, 14, 15], "supported": [11, 12, 13], "supporting": 16, "supports": [4, 5, 8, 10, 12, 16], "suppress": 2, "suprim": 10, "sur": [5, 12, 13, 16], "surely": [3, 4], "surrounding": 12, "susan": 6, "sutil": 6, "sv": 6, "switch": [2, 5, 6], "sybas": 6, "sybaseadapt": 6, "symbol": 12, "symbols": 12, "sync": [2, 6], "synops": 12, "syntactic": 12, "syntax": [0, 1, 4, 5, 6, 7, 8, 10, 12, 13, 15, 16], "system": [0, 2, 5, 6, 10, 13, 16], "systems": 16, "sysus": 6, "s\u00e3": [0, 1, 3, 4, 5, 6, 8, 10, 11, 13, 14], "s\u00e9ri": 6, "t": [0, 2, 4, 5, 6, 8, 10, 11, 12, 13, 14, 15], "t_fold": 5, "tab": [3, 5, 12], "tabel": [5, 10, 13, 14, 15], "tabl": [5, 7, 12, 13, 14, 15, 16, 17], "table1": 6, "table_hash": 6, "table_nam": 6, "tablenam": [6, 7, 12, 16], "tag": [0, 5, 6, 7, 8, 13, 15, 16], "tag_input": 16, "tagg": 10, "tagged_db": 13, "tagging": [6, 10, 13], "tags": [0, 5, 6, 8, 10, 12, 15, 16, 17], "tags_input": 16, "tags_inputs": 16, "tail": 6, "tail_nam": 13, "tais": 6, "tak": [2, 3, 5, 6, 8, 12, 13, 14, 16], "taken": 12, "tal": 6, "talvez": [2, 5], "tamanh": 6, "tampering": [5, 6], "tant": [6, 16], "tantissim": 11, "tap": 16, "tar": 12, "tard": [4, 6], "taref": [1, 6, 13], "target": [10, 16], "task": 17, "task_run": 16, "tasks": [5, 6, 16], "tast": 6, "tbody": 6, "tcp": 3, "td": 6, "teach": 13, "technically": 16, "tecl": [6, 11], "tell": [4, 13, 16], "telling": [2, 13], "tells": [5, 16], "temp": [2, 8], "templat": [0, 4, 10, 12, 13, 15, 16, 17], "temporarily": 5, "tempor\u00e1ri": 6, "ten": 12, "tenancy": 6, "tenh": [1, 5, 6], "tent": [5, 6], "ter": [2, 4, 5, 6, 10], "teradat": 6, "teradataadapt": 6, "terceir": 6, "tered": 12, "term": 6, "termin": 10, "terminal": 4, "terminat": [8, 16], "terms": 12, "terr": 6, "ter\u00e3": 6, "test": [2, 6, 8, 10, 12, 14], "tested": [0, 2, 10, 13], "testing": [4, 6], "text": [2, 5, 6, 8, 10, 14, 16], "textar": 12, "textareawidget": 12, "textual": 10, "th": 6, "than": [0, 5, 6, 8, 10, 12, 13, 14, 16], "thank": 10, "thanks": 0, "that": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13, 14, 15, 16], "that_templat": 8, "the": [0, 3, 8, 10, 11, 13, 15, 17], "thead": 6, "them": [0, 1, 2, 4, 5, 6, 7, 8, 12, 13, 14, 15, 16], "themselv": [6, 8], "then": [2, 4, 5, 6, 8, 10, 12, 13, 14, 15, 16], "ther": [1, 2, 5, 6, 8, 12, 13, 14, 15, 16], "therefor": [4, 5, 8, 12, 15], "thes": [2, 4, 5, 6, 8, 10, 12, 14, 16], "they": [2, 4, 5, 6, 7, 8, 12, 13, 15, 16], "thing": [5, 6, 12, 14, 15], "thing_id": 12, "thing_tags_default": 6, "things": [2, 5, 6, 12], "think": [5, 8, 14, 16], "third": [0, 5, 12], "this": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "this_templat": 8, "thisisatest": 10, "thisisthekey": 12, "thos": [5, 6, 8, 10, 13, 15, 16], "though": 8, "thought": [0, 6, 13], "thre": [0, 5, 6], "thread": [6, 15, 16], "threaded": [2, 15], "threads": [5, 6], "threadsafevariabl": 5, "through": [2, 12], "throughout": 5, "thumbnail": 12, "ti": 5, "ticket": 6, "tickets_only": 2, "til": 6, "tim": [0, 4, 5, 6, 8, 14, 15, 16], "timed": 6, "timedelt": 12, "timeoffset": 10, "timeout": [5, 16], "timeouts": 16, "timestamp": [5, 7, 16], "tint": 4, "tip": [4, 14], "tips": [2, 14], "tir": 6, "titl": [8, 12, 16], "tiv": 6, "tmp": [5, 6], "to": [0, 1, 2, 3, 4, 5, 7, 8, 10, 11, 12, 13, 14, 15, 16], "to_addr": 16, "to_addrs": 16, "tod": [1, 2, 3, 4, 5, 7, 8, 10, 11, 13, 14, 16], "today": [0, 12, 16], "todeclar": 5, "togeth": [0, 8], "token": [5, 12], "tom": 6, "too": [2, 5, 6, 12, 16], "took": 6, "tool": 0, "tools": [6, 13, 16], "top": [8, 12, 13], "topics": [14, 17], "torn": [1, 2, 5, 6, 10, 14], "total": [1, 6, 7], "total_pric": 6, "touch": 8, "toy": 6, "tr": 6, "trabalh": [2, 4, 6, 7], "traceback": 6, "tracebacks": 5, "track": [1, 15], "trad": 6, "tradicion": 6, "tradicional": 6, "traditional": 2, "tradutor": 4, "traduz": [1, 6, 8, 11], "tradu\u00e7\u00e3": [5, 17], "tradu\u00e7\u00f5": [5, 11], "trailing": [2, 12], "training": 1, "transaction": [5, 6], "transactional": 16, "transactions": 6, "transa\u00e7\u00f5": 6, "transform": [4, 5, 6, 12, 16], "transformed": [5, 6], "transforms": 5, "transitions": 16, "translat": 16, "translated": [5, 8, 12], "translation": [5, 12, 15], "translations": [5, 11, 16], "translator": [2, 11, 17], "transmit": 3, "transparent": [6, 8, 12], "transparently": 8, "trapped": 16, "trat": [4, 6], "tre": [8, 12], "treated": [6, 15], "tri": [6, 15], "trickery": 8, "tricks": 2, "tried": 0, "trigg": [6, 16], "triggers": 5, "trivial": [5, 6], "tru": [1, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "trunc": 6, "truncat": 6, "truth": 16, "try": [2, 5, 6, 8, 12, 13, 16], "trying": [1, 12, 13], "tr\u00e1s": 6, "tr\u00eas": 6, "ttl": 5, "tud": [5, 6], "tupl": [6, 8, 10], "turn": [12, 13, 14, 16], "turned": 0, "turns": [6, 16], "tutorial": [1, 2, 4, 14, 16], "tutorials": 1, "twic": [5, 6], "twili": 16, "twitt": [0, 5, 13], "two": [1, 2, 4, 5, 6, 8, 12, 14, 15, 16], "two_factor": 13, "two_factor_filt": 13, "txt": [0, 2, 4, 6], "type": [2, 5, 7, 8, 10, 13, 16], "types": 12, "typical": [5, 6, 12], "typically": [4, 8], "t\u00eam": [2, 4, 6, 13], "t\u00edpic": 6, "t\u00edtul": [3, 10, 14], "t\u00f3pic": 6, "u": [2, 6, 10], "ubuntu": 13, "uc": 1, "ui": [5, 13], "uid": 6, "ul": [8, 12, 13, 16], "un": [8, 10, 11, 16], "unauthenticated": [5, 6, 10], "unauthorized": 6, "unchanged": 12, "undefined": 5, "under": [2, 3, 4, 5, 6, 12], "underlying": 15, "underscor": [6, 10, 12], "understand": [0, 2, 4, 6, 7, 8], "understanding": 17, "undocumented": 16, "unfortunat": 6, "unfortunately": 14, "unicod": [6, 12], "unicodedecodeerror": 6, "unid": 6, "uniform": 6, "uniqu": [6, 7, 12], "unit_pric": 6, "unit\u00e1ri": 6, "universal": [4, 6, 10], "uni\u00e3": 6, "unknown": 4, "unless": [3, 5, 6, 8, 12, 16], "unlik": [0, 2, 7, 8, 15, 16], "unnamed": 6, "unneded": 2, "unordered": 10, "unpkg": 16, "unquoted": 10, "uns": 5, "unsaf": [5, 10, 12], "untested": [2, 13], "until": [0, 5, 6, 8, 12], "un\u00e1ri": 6, "up": [1, 2, 5, 6, 8, 13, 16], "updat": [2, 5, 12, 14, 15, 16], "update_form": 12, "update_languag": 11, "update_naiv": 6, "update_thing": 12, "updated": [5, 6, 12], "updating": 5, "upgrad": [2, 6], "upgraded": 2, "upload": [4, 6], "upload_fold": [6, 12], "upload_help": 16, "uploaded": [6, 12, 15], "uploadfield": 6, "uploadfold": 6, "uploadfs": 6, "uploads": 6, "uploadseparat": 6, "upon": [2, 13, 15], "upper": [4, 5, 12], "upper_cas": 5, "uppercas": [5, 12], "uri": 13, "uris": 6, "url": [4, 5, 7, 8, 12, 13, 14, 15, 16], "url_prefix": 2, "url_sign": 5, "url_to_post_t": 16, "urls": [2, 12, 15], "urlsign": 17, "us": [2, 12], "usa": [0, 4, 5, 6, 8], "usabl": 14, "usad": [0, 4, 6, 10, 11, 13, 14], "usag": [2, 3, 4, 5, 6, 10, 12, 13, 14], "usam": 6, "usand": [4, 5, 8, 10, 13, 17], "usar": [2, 4, 5, 6, 8, 10, 14], "use": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "use_schedul": 16, "used": [2, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "useful": [2, 4, 8, 10, 12, 14, 16], "usefull": 12, "useless": [12, 15], "user": [2, 4, 5, 6, 7, 8, 10, 12, 14, 15, 16], "user_email": 15, "user_id": [5, 6, 13, 15], "user_nam": 6, "user_outside_network": 13, "user_password": 6, "user_token": 6, "usernam": [5, 6, 13], "users": [0, 1, 4, 5, 13, 15], "uses": [0, 1, 2, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "using": [0, 1, 3, 4, 7, 12, 15, 17], "uso": [2, 5, 14], "usos": 6, "usou": [5, 6], "usr": 1, "usual": [2, 8, 10, 12], "usually": [1, 5, 7, 12], "usu\u00e1ri": [1, 2, 3, 4, 5, 6, 13, 15], "us\u00e1": [2, 6, 8], "utcnow": [5, 6], "utf": 6, "utf8": 6, "utf8mb4": 6, "utility": [2, 12], "utiliz": [2, 3, 4, 5, 6, 10, 13, 14], "utilizing": 14, "utils": [2, 4, 5, 8, 10, 12, 13, 14, 15, 17], "uuid": [5, 6], "uuid4": [5, 6], "uuids": 6, "v": [5, 10, 12, 16], "v3": 1, "vai": [1, 4, 6, 8], "val": 14, "val1_row1": 6, "val1_row2": 6, "val2_row1": 6, "val2_row2": 6, "valid": [4, 6, 10, 15, 17], "validat": [6, 12], "validate_js": 4, "validated": 12, "validation": [4, 6, 7, 8, 14], "validator": [6, 12], "validators": [2, 15], "validity": 12, "valios": 1, "valor": [5, 10, 11, 12, 14], "valq7711": [0, 4], "vals": 16, "valu": [2, 4, 5, 6, 7, 8, 10, 11, 12, 13, 14, 16], "value1": 6, "value2": 6, "value_field": 12, "valued": 12, "vam": [1, 6, 10], "vantag": 6, "vantagens": 6, "var": 16, "varch": 6, "vari": 6, "variabl": [5, 6, 10, 12, 14, 16], "various": 5, "vari\u00e1vel": [4, 6, 10, 11], "varredur": 6, "vars": [6, 10, 12, 15], "vaz": 6, "vazi": [2, 6], "ve": [2, 3, 5, 8, 10, 12, 13, 14, 16], "vej": [2, 3], "veloc": 6, "vem": [0, 4, 6], "vendor": 16, "vendor_typ": 16, "vendors": 16, "venv": 2, "ver": [2, 6, 13], "verd": 4, "verdad": 14, "verdadeir": [6, 12, 14], "verif": 6, "verific": [5, 6, 13], "verification": 13, "verified": [5, 12, 16], "verify": 5, "verify_email": 13, "verifying": 13, "vermelh": 4, "vers": 5, "version": [1, 3, 7, 8, 12, 16], "versions": [2, 5, 12], "vers\u00f5": 6, "vertic": 6, "verticaadapt": 6, "very": [0, 4, 8, 10, 12, 13, 15, 16], "vez": [2, 4, 5, 8, 10, 13, 14], "ve\u00edcul": 5, "via": [5, 6, 8, 10, 16], "vias": 6, "vic": 5, "vid": [1, 2, 16], "view": [1, 5, 6], "viewing": 6, "viewport": 8, "views": 6, "vincul": 6, "vind": 2, "vir": 13, "virtual": [1, 17], "virtualenv": [1, 2], "virtualfields": 6, "visit": [3, 5, 12], "visit_log": 5, "visited": [5, 8], "visiting": [5, 13], "visitor": 6, "visitors": [10, 12], "visits": 6, "vist": [5, 6, 10], "visual": 1, "visualiz": 6, "vis\u00e3": 6, "vis\u00edvel": 4, "vital": 13, "voc": [1, 2, 3, 4, 5, 6, 8, 10, 13, 14], "volt": [5, 6], "vou": 2, "vscod": 2, "vue": [0, 4, 16], "vulner": 8, "v\u00e1l": 4, "v\u00e1r": [2, 4, 5, 6], "v\u00e1ri": [4, 5, 6, 11], "v\u00e3": 6, "v\u00ea": 6, "v\u00edrgul": 6, "v\u00f4o": 7, "w": [2, 4, 5, 6], "w2p_even": 6, "w2p_odd": 6, "waitress": 2, "want": [2, 4, 5, 6, 8, 12, 16], "wanting": 16, "wants": 5, "warning": [2, 5], "was": [0, 5, 6, 12, 13, 14], "watch": [2, 3, 17], "watched": 4, "way": [2, 3, 5, 6, 8, 10, 12, 13, 15], "wayn": [7, 14], "ways": [0, 2, 4, 6, 13, 14, 16], "wb": 6, "we": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "web": [0, 1, 2, 5, 6, 8, 13, 14, 15, 16, 17], "web2py": [0, 1, 2, 3, 4, 6, 12, 13, 14, 17], "websit": [6, 16], "websocket": 16, "welcom": [4, 5, 8, 15, 16], "well": [0, 5, 6, 8, 12, 13, 16], "wer": [0, 4], "what": [4, 5, 6, 8, 12, 13, 15, 16], "whatev": [10, 16], "when": [0, 2, 3, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "whenev": 4, "wher": [1, 2, 4, 6, 8, 12, 13, 15, 16], "wheth": [5, 6, 12, 13, 15], "which": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "whichev": 16, "whil": [5, 6, 7, 12, 13, 14, 15], "whit": [10, 16], "whitelist": 13, "who": [0, 13], "whol": [4, 12], "whos": [6, 8, 12], "why": [5, 8, 15], "widget": [6, 12], "widgets": [16, 17], "width": [8, 12], "wik": [6, 7], "wikiped": [6, 7], "wild": 6, "wildcard": 4, "will": [1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "window": [5, 8, 12], "windows": [1, 2, 4, 6], "wish": 16, "wishing": 12, "wit": 2, "with": [0, 1, 2, 3, 4, 5, 7, 8, 10, 16, 17], "with_al": 6, "within": [0, 1, 5, 6, 8, 10, 12, 16], "without": [6, 8, 10, 16, 17], "wolf": 0, "wood": 6, "words": [5, 14], "work": [0, 2, 4, 5, 6, 8, 10, 12, 16], "worked": [0, 16], "workers": 2, "workflow": [5, 17], "working": [2, 12], "workload": 6, "workplac": 1, "works": [2, 6, 8, 12, 13, 14, 15, 16], "workspacefold": 2, "world": [4, 5, 6, 8, 10, 12, 16], "worry": 4, "worth": 8, "would": [0, 5, 6, 10, 12, 16], "wouldn": 6, "wrap": [12, 14, 16], "wrapp": 16, "wrapped": 5, "wrappers": 15, "writ": [2, 4, 5, 6, 8], "writabl": [5, 6, 12, 15], "writing": [4, 6, 15], "written": [1, 8, 12, 14], "wrong": [0, 5, 6], "wsgi": 5, "wsgiref": 2, "wsgirefthreadingserv": 2, "wsgith": 2, "www": [2, 8, 10, 14, 16], "x": [2, 6, 8, 10, 12, 14, 16], "xml": [5, 8, 12, 15, 16], "xmlescap": 10, "xmlns": 10, "xss": [6, 8, 10], "xyz": [10, 12], "y": [2, 10, 12], "yaml": 2, "yatl": [0, 4, 5, 6, 12, 14, 16, 17], "yb": 10, "year": [12, 16], "yes": [2, 6, 16], "yes_or_n": 6, "yet": [0, 2, 4, 5, 8, 12, 16], "yml": 2, "you": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16], "your": [1, 2, 3, 4, 5, 6, 8, 10, 12, 13, 14, 15, 16], "your_app": 12, "your_full_path_to_py4web": 1, "your_nam": [1, 16], "yourapp": 6, "yourappnam": 2, "youremail": 13, "yourself": [1, 12], "youtub": [2, 6], "yyyy": 12, "z": [10, 12], "zanferrar": 0, "zap": 13, "zap_id": 13, "zapp": 13, "zapped": 13, "zer": [6, 8, 12, 14], "zip": [0, 2, 6, 12], "zip_cod": 16, "zxjdbc": 6, "\u00c0s": [6, 10], "\u00e1rvor": 4, "\u00e2mbit": 4, "\u00e9": [1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13, 14, 15, 17], "\u00e9poc": 6, "\u00edndic": 4, "\u00f3bvi": [6, 8], "\u00f3ptim": 4, "\u00faltim": [5, 6, 13], "\u00fanic": [0, 2, 6, 10], "\u00fate": [1, 6], "\u00fatil": 6}, "titles": ["O que \u00e9 py4web?", "Ajuda, recursos e dicas", "Instala\u00e7\u00e3o e coloca\u00e7\u00e3o em funcionamento", "O Dashboard", "Creating an app", "Fixures", "The Database Abstraction Layer (DAL)", "The RestAPI", "Linguagem de template YATL", "<no title>", "Helpers YATL", "Internacionaliza\u00e7\u00e3o", "Foruml\u00e1rios", "Authentication and authorization", "Rede", "De web2py para py4web", "Advanced topics and examples", "py4web: o manual de refer\u00eancia"], "titleterms": {"A": [3, 6, 10, 12], "As": 1, "Comando": 6, "Como": 1, "De": 15, "Do": 4, "EM": 10, "Em": 4, "Este": 1, "Mais": 6, "O": [0, 1, 3, 4, 5, 6], "OS": 15, "Os": [6, 14], "Um": [1, 6], "_lastsql": 6, "_scaffold": 4, "about": 5, "abstraction": 6, "accessing": 15, "acknowledgments": 0, "actions": [7, 13], "adapt": 6, "adicion": 6, "advanced": [12, 16], "agrup": 6, "ajud": 1, "aka": 2, "alias": 6, "alon": 6, "amostr": 14, "an": 4, "and": [6, 7, 8, 12, 13, 14, 15, 16], "antig": 6, "any_of": 12, "anywher": 5, "aplic": 6, "app": [2, 4, 6], "args": 15, "arquiv": 11, "as_dict": 6, "as_list": 6, "assinatur": 6, "asynci": 16, "atalh": 6, "atribut": 6, "atualiz": [6, 11], "aut": 6, "autentic": 13, "auth": [5, 13, 15], "authentication": 13, "authorization": 13, "autocomplet": 16, "avanc": 6, "avg": 6, "a\u00e7\u00e3": 14, "background": 16, "banc": 6, "bas": 6, "basic": [12, 14], "beautify": 10, "belongs": 6, "bin\u00e1ri": 2, "block": 8, "body": 10, "bot\u00e3": 14, "bot\u00f5": 14, "built": 10, "b\u00e1sic": 8, "cach": 6, "caching": 5, "cad": 6, "call": 2, "callabl": 14, "calling": 15, "camp": [6, 14], "caracter\u00edst": 6, "cas": 6, "cascad": 6, "cat": 10, "caveats": 5, "celery": 16, "cham": 6, "chang": 4, "chav": 6, "checkbox": [12, 14], "children": 10, "class": 14, "cleanup": 12, "client": 5, "coalesc": 6, "coalesce_zer": 6, "coloc": 2, "columns": 14, "comando": 2, "combin": 6, "commit": 6, "complexity": 12, "comput": 6, "computed": 6, "comuns": 6, "condition": 5, "conex\u00e3": 6, "conex\u00f5": 6, "configur": [2, 6], "constructor": 12, "construtor": 6, "consult": 6, "cont": 6, "contains": 6, "conte\u00fad": 17, "contribu": 1, "control": 6, "convenient": 5, "conversion": 15, "cooki": 5, "copi": 6, "copying": 4, "corr": 2, "count": [6, 15], "creating": 4, "crud": 14, "crypt": 12, "csv": 6, "custom": [12, 14], "customizing": 14, "dad": 6, "dal": [5, 6], "dashboard": [3, 6], "dat": 12, "databas": [5, 6, 12], "datastor": 6, "day": 6, "db": 6, "decor": 5, "def": 8, "default": 8, "defeit": 6, "defin": 6, "define_tabl": 6, "deix": 6, "delet": 6, "deployment": 2, "depur": 1, "design": [2, 12], "development": 8, "dic": 1, "dicion\u00e1ri": 6, "dictionari": 12, "din\u00e2m": 4, "discord": [1, 13], "distinct": 6, "distint": 6, "distribu\u00edd": 6, "div": 10, "dock": 2, "dom": 10, "drop": 6, "elif": 8, "else": 8, "endswith": 6, "engin": 2, "envi": 6, "environment": 2, "equality": 12, "estil": 6, "est\u00e1t": 4, "etiquet": 13, "exampl": [7, 12, 14, 15, 16], "excet": 8, "exclud": 6, "exclus\u00e3": 6, "execu": 6, "executesql": 6, "experiment": 6, "experimental": 6, "export": 6, "express\u00f5": 6, "extend": 8, "extending": 8, "facebook": 13, "factor": 13, "fake_migrat": 6, "falh": 6, "faz": 6, "featur": 14, "fich": 6, "field": [6, 12], "fields": 6, "fil": [4, 12, 15], "filter_in": 6, "filter_out": 6, "filtering": 14, "filtr": 6, "finally": 8, "find": [6, 10], "first": 6, "fixa\u00e7\u00e3": 6, "fixtur": 5, "fixur": 5, "flash": [5, 15], "font": [1, 2], "form": [10, 12, 15, 16], "format": [6, 12, 16], "forms": 12, "formul\u00e1ri": 12, "foruml\u00e1ri": 12, "from": 2, "funcion": 2, "functions": [8, 12], "gae": 2, "gcloud": 2, "generating": 6, "get": 7, "github": 1, "global": 2, "googl": [1, 2, 6, 13], "grid": [14, 15, 16], "grids": 14, "groupby": 6, "grup": 1, "h1": 10, "h2": 10, "h3": 10, "h4": 10, "h5": 10, "h6": 10, "having": 6, "head": 10, "hell": 15, "helpers": 10, "heranc": 6, "hour": 6, "html": [6, 10], "htmx": 16, "https": 2, "i": 10, "id": 6, "if": 8, "ilik": 6, "img": 10, "impersonation": 13, "implant": 2, "import": 6, "in": [5, 8, 10, 16], "includ": 8, "inferior": 6, "information": 8, "inject": [5, 10], "inner": 6, "input": 10, "inser": 6, "insert": 6, "inser\u00e7\u00e3": 6, "insid": 13, "instal": 2, "installations": 2, "installing": 2, "interfac": 13, "internacionaliz": 11, "introduction": 6, "is_alphanumeric": 12, "is_dat": 12, "is_date_in_rang": 12, "is_datetim": 12, "is_datetime_in_rang": 12, "is_decimal_in_rang": 12, "is_email": 12, "is_empty_or": 12, "is_equal_t": 12, "is_expr": 12, "is_fil": 12, "is_float_in_rang": 12, "is_imag": 12, "is_in_db": 12, "is_in_set": 12, "is_int_in_rang": 12, "is_ipaddress": 12, "is_ipv4": 12, "is_ipv6": 12, "is_json": 12, "is_length": 12, "is_list_of": 12, "is_list_of_emails": 12, "is_low": 12, "is_match": 12, "is_not_empty": 12, "is_not_in_db": 12, "is_null_or": 12, "is_saf": 12, "is_slug": 12, "is_strong": 12, "is_tim": 12, "is_upload_filenam": 12, "is_upp": 12, "is_url": 12, "isempty": 6, "iter": 6, "join": 6, "joins": 6, "js": 16, "junt": 6, "key": 14, "label": 10, "last": 6, "lay": 6, "layout": 8, "ldap": 13, "left": 6, "leg": 6, "len": 6, "less": 6, "li": 10, "lik": 6, "limitby": 6, "linguag": 8, "linh": 2, "list": 6, "local": [1, 2, 6], "low": 6, "l\u00f3gic": 6, "manipulation": 12, "manual": [1, 17], "many": 6, "marca\u00e7\u00e3": 6, "max": 6, "melhor": 2, "memcach": 5, "memoiz": 5, "mem\u00f3r": 6, "mesm": 6, "messag": 16, "methods": [6, 15], "microsoft": 6, "migrat": 6, "migra\u00e7\u00e3": 6, "migra\u00e7\u00f5": 6, "min": 6, "minimal": 12, "minut": 6, "mobil": 8, "model": [4, 6], "modern": 1, "modific": 6, "month": 6, "mssql": 6, "muit": 6, "multipl": [5, 13], "mysql": 6, "new_app": 2, "nom": 6, "nosql": 6, "not": 6, "nov": 6, "oauth2": 13, "object": [14, 16], "objects": 13, "objet": 4, "obten\u00e7\u00e3": 6, "ol": 10, "on": 2, "on_defin": 6, "oper": 6, "option": 10, "options": 12, "op\u00e7\u00e3": 2, "op\u00e7\u00f5": 2, "orden": 6, "orderby": 6, "orderby_on_limitby": 6, "or\u00e1cul": 6, "other": 12, "out": 6, "outr": 6, "overview": 10, "p": 10, "padr\u00e3": 6, "pag": 8, "palavr": 6, "pam": 13, "par": [6, 8, 15], "paramet": 12, "parameters": 14, "part": [2, 6], "par\u00e2metr": 6, "past": 6, "pegadinh": 6, "permiss\u00f5": 13, "personaliz": [5, 6, 10, 14], "pip": 2, "plataform": 2, "plugins": 13, "plural": 6, "pluraliz": 11, "podman": 2, "polic": 7, "polymodel": 6, "pool": 6, "practical": 7, "pre": 10, "preguic": 6, "primarykey": 6, "primeir": 2, "prim\u00e1r": 6, "principal": 3, "princ\u00edpi": 4, "proced": 2, "pr\u00e9": [1, 2], "py4web": [0, 1, 6, 15, 16, 17], "pycharm": 1, "python": 1, "pythonanywher": 2, "p\u00e1gin": [3, 4], "q": 16, "quebr": 6, "query": 6, "quick": 6, "quoting": 6, "rang": 12, "raw": 6, "real": 6, "record": 6, "recurs": [1, 6], "red": [5, 14], "redefin": 6, "redirect": 15, "referent": [6, 14, 17], "regexp": 6, "registr": 6, "relation": 6, "relations": 6, "rela\u00e7\u00e3": 6, "remot": 6, "renderiz": 6, "replic": 6, "represent": 6, "request": 4, "requisit": [1, 2], "reserv": 6, "respons": 7, "restap": 7, "resum": 6, "retorn": [4, 6], "return": [8, 15], "returning": 15, "rnam": 6, "rollback": 6, "rot": 4, "row": 6, "rows": 6, "run": 2, "s": 6, "schedul": 16, "script": 10, "searching": 14, "seconds": 6, "security": 12, "segur": 6, "select": [6, 10], "selects": 6, "selet": 6, "sending": 16, "sequence_nam": 6, "serv": [1, 5, 6, 10], "session": 5, "sessions": 5, "sess\u00e3": 3, "set": [6, 12], "set_password": 2, "setting": 15, "settings": 14, "setup": 2, "sharing": 5, "shell": [2, 6], "sid": [5, 10], "sidec": 12, "simpl": 15, "sincroniz": 6, "singul": 6, "sintax": 8, "sobr": 6, "sort": 6, "sorted": 12, "span": 10, "special": [2, 12], "sql": 6, "sqlit": 6, "stand": 6, "standard": [8, 12], "startswith": 6, "string": 16, "strings": 6, "structur": [8, 12], "style": [10, 14], "substrings": 6, "sugest\u00f5": 1, "sum": 6, "sup": 8, "suport": [2, 6], "supported": 6, "t": 16, "tabel": [6, 17], "tabl": [6, 10], "table_class": 6, "tag": 10, "tagging": 12, "tags": 13, "task": 16, "tbody": 10, "td": 10, "temp": 6, "templat": [5, 8, 14], "temporiz": 6, "tend": 6, "tent": 8, "tentat": 6, "text": 12, "textar": 10, "th": 10, "the": [1, 2, 4, 5, 6, 7, 12, 14, 16], "thead": 10, "tim": 12, "tip": 6, "titl": 10, "to": 6, "tod": 6, "topics": 16, "tour": 6, "tr": 10, "trabalh": 1, "tradu\u00e7\u00e3": 11, "transa\u00e7\u00e3": 6, "translator": 5, "trigger_nam": 6, "tt": 10, "tupl": 12, "tutori": 1, "two": 13, "two_factor_required": 13, "two_factor_send": 13, "two_factor_tri": 13, "type": [6, 12], "types": 6, "ubuntu": 2, "ul": 10, "understanding": 2, "up": 15, "updat": 6, "update_or_insert": 6, "update_record": 6, "upload": 12, "upper": 6, "uri": 6, "url": 10, "urlsign": 5, "usag": 16, "usand": [6, 14], "user": 13, "using": [2, 5, 6, 8, 10, 13, 14, 16], "uso": 6, "utils": 16, "valid": 12, "validate_and_insert": 6, "validate_and_updat": 6, "validation": 12, "validators": [6, 12], "valor": [4, 6], "variabl": [8, 15], "velh": 6, "version": [2, 6], "vez": 6, "view": 15, "virtu": 6, "virtual": [2, 6], "vscod": 1, "v\u00edd": 1, "watch": 4, "web": [3, 4], "web2py": 15, "whil": 8, "widget": 16, "widgets": 12, "with": [6, 12, 13, 14, 15], "without": [2, 12], "workflow": 8, "world": 15, "wsgi": 2, "xml": [6, 10], "yatl": [8, 10], "year": 6, "\u00e9": 0, "\u00edndic": [6, 17]}}) \ No newline at end of file diff --git a/docs/chapter-16.rst b/docs/chapter-16.rst index afb589dd..58b61f1d 100644 --- a/docs/chapter-16.rst +++ b/docs/chapter-16.rst @@ -89,18 +89,20 @@ That means you need a new task: import sendgrid from sendgrid.helpers.mail import Mail, Email, To, Content - def sendmail_task(data): + def sendmail_task(from_addr, to_addrs, subject, body): + "" + # build the messages using sendgrid API + from_email = Email(from_addr) # Must be your verified sender + content_type = "text/plain" if body[:6] != "" else "text/html" + content = Content(content_type, body) + mail = Mail(from_email, To(to_addrs), subject, content) + # ask sendgrid to deliver it sg = sendgrid.SendGridAPIClient(api_key=settings.SENDGRID_API_KEY) - from_email = Email(data["from") # Change to your verified sender - to_email = To(data["to"]) # Change to your recipient - subject = data["subject"] - content_type = "text/plain" if data["body"][:6] != "" else "text/html" - content = Content(content_type, data["body"]) - mail = Mail(from_email, to_email, subject, content) - mail_json = mail.get() - response = sg.client.mail.send.post(request_body=mail_json) + response = sg.client.mail.send.post(request_body=mail.get()) + # check if worked assert response.status_code == "200" + # register the above task with the scheduler scheduler.register_task("sendmail", sendmail_task) @@ -109,35 +111,39 @@ To schedule sending a new email do: .. code:: python email = { - "to": "me@example.com", - "from": ["me@example.com"], - "subjet": "Hello Wordl", + "from_addr": "me@example.com", + "to_addrs": ["me@example.com"], + "subject": "Hello World", "body": "I am alive!", } scheduler.enqueue_run(name="sendmail", inputs=email, scheduled_for=None) +The key:value in the email representation must match the arguments of the task. The ``scheuled_for`` argument is optional and allows you to specify when the email should be sent. -You can use the Dashboard to see the status of your ``task_runs`` for task ``sendmail``. +You can use the Dashboard to see the status of your ``task_run``s for the task called ``sendmail``. You can also tell auth to tap into above mechanism for sending emails: .. code:: python - class SendGridSender: + class MySendGridSender: def __init__(self, from_addr): self.from_addr = from_adds def send(self, to_addr, subject, body): email = { - "to": to_addrs, - "from": [self.from_addr], - "subjet": subject, + "from_addr": self.from_addr, + "to_addrs": [to_addr], + "subject": subject, "body": body, } scheduler.enqueue_run(name="sendmail", inputs=email) - auth.sender = SendGridSender(from_addr="me@example.com") + auth.sender = MySendGridSender(from_addr="me@example.com") -And, with the above, Auth will not send emails using smtplib. Instead it will send them with SendGrid using the scheduler. +With the above, Auth will not send emails using smtplib. Instead it will send them with SendGrid using the scheduler. +Notice the only requirement here is that ``auth.sender`` must be an object with a ``send`` method with the same signature as in the example. + +Notice, it it also possible to send SMS messages instead of emails but this requires 1) store the phone number in ``auth_user`` and 2) override the ``Auth.send`` method. Celery diff --git a/docs/locales/pt/LC_MESSAGES/chapter-07.mo b/docs/locales/pt/LC_MESSAGES/chapter-07.mo index 6c259184..95c31493 100644 Binary files a/docs/locales/pt/LC_MESSAGES/chapter-07.mo and b/docs/locales/pt/LC_MESSAGES/chapter-07.mo differ