home / github / issue_comments

Menu
  • Search all tables
  • GraphQL API

issue_comments: 1032294365

This data as json

html_url issue_url id node_id user created_at updated_at author_association body reactions issue performed_via_github_app
https://github.com/simonw/sqlite-utils/issues/402#issuecomment-1032294365 https://api.github.com/repos/simonw/sqlite-utils/issues/402 1032294365 IC_kwDOCGYnMM49h4_d 9599 2022-02-08T07:32:09Z 2022-02-08T07:34:41Z OWNER

I have an idea for how that third option could work - the one that creates a new column using values from the existing ones: python db["places"].insert( { "name": "London", "lng": -0.118092, "lat": 51.509865, }, conversions={"point": LongitudeLatitude("lng", "lat")}, ) How about specifying that the values in that conversion= dictionary can be:

  • A SQL string fragment (as currently implemented)
  • A subclass of Conversion as described above
  • Or... a callable function that takes the row as an argument and returns either a Conversion subclass instance or a literal value to be jnserted into the database (a string, int or float)

Then you could do this:

python db["places"].insert( { "name": "London", "lng": -0.118092, "lat": 51.509865, }, conversions={ "point": lambda row: LongitudeLatitude( row["lng"], row["lat"] ) } ) Something I really like about this is that it expands the abilities of conversions= beyond the slightly obscure need to customize the SQL fragment into something that can solve other data insertion cleanup problems too.

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
1125297737  
Powered by Datasette · Queries took 0.841ms · About: github-to-sqlite