When I create a database in web2py using the DAL, and I create a table for the user comments on my website for example and I need to be able to get the user that sent that particular comment, I can do it by email..
However emails can change over time (possible option) and the database itself could end up looking for a non existent user if the email is not updated on all "child" tables that uses that email as reference 1 to 1 for that user.
For this reasons, I would need to automatically update all the Foreign Keys in child tables, so is this feature (update on cascade on foreign keys) present and by default when using DAL / is it possible to tell the DAL connection to do it by adding a updateoncascade=True in needed Field("name", type="type", notnull=True, updateoncascade=True) fields?
are web2py Database Abstraction Layer (DAL) references on cascade by default?
184 Views Asked by bryanpedini At
1
There are 1 best solutions below
Related Questions in PYTHON
- How to store a date/time in sqlite (or something similar to a date)
- Instagrapi recently showing HTTPError and UnknownError
- How to Retrieve Data from an MySQL Database and Display it in a GUI?
- How to create a regular expression to partition a string that terminates in either ": 45" or ",", without the ": "
- Python Geopandas unable to convert latitude longitude to points
- Influence of Unused FFN on Model Accuracy in PyTorch
- Seeking Python Libraries for Removing Extraneous Characters and Spaces in Text
- Writes to child subprocess.Popen.stdin don't work from within process group?
- Conda has two different python binarys (python and python3) with the same version for a single environment. Why?
- Problem with add new attribute in table with BOTO3 on python
- Can't install packages in python conda environment
- Setting diagonal of a matrix to zero
- List of numbers converted to list of strings to iterate over it. But receiving TypeError messages
- Basic Python Question: Shortening If Statements
- Python and regex, can't understand why some words are left out of the match
Related Questions in WEB2PY
- How to limit a query using combination of integer and datetime.date fields
- Why am I getting Exception Error: 'Field' object has no attribute '__dir__' when uploading images
- web2py basic testing, view can't find different dict keys passed in controller
- Why does this error occur when searching in web2py
- Ways to render dot/graphviz in web2py?
- web2py Select min value from join
- In web2py, when I try to append a pandas series to a new data frame, I don't see any data in the dataframe. What could be the reason?
- "unable to import requests" in web2py even though requests is accessible directly through python
- web2py: How to target a div using the response.menu
- web2py: left-outer join not giving all records on left
- web2py: Prevent delete action on the A() helper depending on the result of the callback
- Using temporary files and folders in Web2py app
- web2py: How to execute further code after ajax call
- web2py: custom forms can not edit anymore after submitting
- How to solve a duplicate column name error in web2py
Related Questions in DATABASE-ABSTRACTION
- Python database abstraction layers comparison examples
- Right way for initializing SQLAlchemy
- Generalized DTO population method with different query select lists
- How to abstract existing firebase CRUD operations, to be able migrate to another DB in node.js
- Inserto into table select * from - web2py DAL
- are web2py Database Abstraction Layer (DAL) references on cascade by default?
- Yii2/PHP: Abstracting Database Access for InfluxDB and MySQL
- SQL Query State
- Best way to retrieve an associated element from a table abstraction in PHP?
- How do I query for an object with an object array property in MySQL?
- Using interfaces with golang and database abstraction
- PHP PDO - Dynamic SQL prepare statement does not work like hard coded
- Web2py databases: How do I select a subset of rows from selected rows? And how do I pass it to JavaScript?
- How can I optimize DAL web2py query?
- What does Doctrine's Database Abstraction Layer offer over simple PDO?
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular # Hahtags
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
The DAL does not provide an API to specify
ON UPDATE CASCADEwhen creating a table, so you would have to do that externally. Alternatively, you could make use of the_after_updatehook to update records in any child tables.Also consider whether you want to set a foreign key on the email address rather than using the built-in
referencefield functionality, which creates a foreign key on theidfield of the parent table. Because theidof a given user record will never change, you do not have to worry about cascading updates:Above,
'reference auth_user'sets up a foreign key to thedb.auth_user.idfield.