Comments (4)
Interesting. Thanks for the suggestion.
Per the airtable documentation, I think single and double quotes need to be escaped with a backslash.
Maybe we can add a simple regex replacement that replaces unescaped quotes with /' and /"
from pyairtable.
It's easy enough to escape the input field value before it is passed into the function.
val_escaped = val.replace("'", r"\'")
from pyairtable.
An intermediate fix would be to add a note to the documentation regarding escaping quotes in field values.
Interestingly, I had this problem with table.match()
and a single quote, but a subsequent table.insert()
with the same field value worked without escaping the single quote.
Just in case someone is searching for an example of the error message caused by an unescaped single quote, this is what I got -- basically "Invalid formula."
requests.exceptions.HTTPError: 422 Client Error: Unprocessable Entity for url: https://api.airtable.com/v0/appqXJzYCDQgExxDC/Actors?filterByFormula={Name}='Ryan+O'Neal' (Decoded URL) [Error: {'type': 'INVALID_FILTER_BY_FORMULA', 'message': 'The formula for filtering records is invalid: Invalid formula. Please check your formula text.'}]
from pyairtable.
I think #120 fixes this - feel free to reopen otherwise
from pyairtable.
Related Issues (20)
- batch_upsert does not return createdRecords or updatedRecords HOT 1
- 'Api' object has no attribute 'table' HOT 1
- Suddenly getting AttributeError?
- Loading a base with Base() and name overwrites id HOT 2
- Airtable Insert error code 422 HOT 4
- `Api.all()` not present but indicated in `Api` docstring HOT 2
- Webhook delete method HOT 2
- Importing formulas wont work HOT 2
- to_airtable_value() might not be correct for date and datetime values HOT 2
- Add more formulas HOT 2
- Update does not accept return_fields_by_field_id parameter HOT 8
- Rate limit API requests without forcing retries HOT 4
- get_table_schema fails when the api.table is initialized with the table's ID HOT 2
- Error using sample HOT 2
- Implement missing formulas HOT 2
- 2.2 release missing table.update_field HOT 1
- Can I just replace my API key with Personal Access token in legacy code ? HOT 1
- LookupField referencing a LinkField returns id rather than entity HOT 2
- Dynamic solution to formulas HOT 1
- One to many search difficulties HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from pyairtable.