Open mrbende opened 3 weeks ago
My first thought is that you aren't meeting your row level security (RLS) policy requirements. I would suggest turning off RLS and then testing this again to see if it works.
What are the repercussions of that to the privacy of my user database...?
The python client attempting to make these changes is always the same with the table owner's API key.
It does appear at first glance that the Python client would adopt the authenticated role which respects RLS... Although this doesn't explain why I am able to read from the table but I am not able to update the table...?
Is there a way from the Python client init to specify the postgres role? Or to otherwise somehow keep RLS enabled for the sake of my data's privacy, while still allowing the Python client to make updates?
@silentworks Any chance you could update here regarding RLS and best practices? Would it make more sense to create a separate table for my user chat information that is linked to the auth profiles?
@mrbende I think the Supabase docs does a better job at explaining RLS than I can. You should check out the docs and create policies that fits your needs for your project.
The python library only uses anon
and authenticated
roles and not the postgres
user. The role changes depend on whether your user is signed in or not.
Bug report
I am unable to return data, or see the updated content reflected in my Supabase console, when working with a public database... This is in the context of a chatbot application where I am trying to save conversation history alongside user profiles as a json field.
Describe the bug
Egress from the table works with no problem -- I am able to authenticate with the python client, connect to my table, and read the appropriate data from the table.
When trying to update a user profile to update the field, however, no ingress is ever executed. I can validate that the proper json is being passed to the supabase client, but the resulting data is empty and no update is reflected in supabase.
To Reproduce
These are my python functions to interface with supabase within my application:
Expected behavior
In the attached screenshot, the data that is returned on ingress should reflect that data has been added to supabase but nothing is updated.
Supabase table
chat_history
json information can be seen here:Any help would be appreciated. Thank you!
~ Reed