orm
orm copied to clipboard
Add ByteArray Field
Checklist
- [x] There are no similar issues or pull requests for this yet.
- [ ] I discussed this idea on the community chat and feedback is positive.
Is your feature related to a problem? Please describe.
I want to be able to make a ByteArray field for my projects.
Describe the solution you would like.
For example, i would like to have the BYTEA Type in ORM. Eg:
import orm
...
class Example(orm.Model):
tablename = "example"
registry = metadata
fields = {
"user_id": orm.BigInteger(primary_key=True),
"example_bytes": orm.ByteArray()
}
And when i do for example,
field_ex = Example
# in async func
data = await field_ex.objects.get(user_id=1)
return data.example_bytes # this would return python bytes
Describe alternatives you considered
I considered using raw asyncpg which i am, but i would like the bytearray field in ORM so i can use it.
Additional context
@aminalaee What do you think?
Maybe we should use a more generic field type for this. Something like SQLAlchemy LargeBinary.
This will behave differently for each database, and make it easier since we rely on SQLAlchemy core.
And maybe a BinaryField for typesystem too ?