3 rows where user = 222245 sorted by updated_at descending

View and edit SQL

Suggested facets: created_at (date), updated_at (date), closed_at (date)




id node_id number title user state locked assignee milestone comments created_at updated_at ▲ closed_at author_association pull_request body repo type active_lock_reason performed_via_github_app
292011379 MDU6SXNzdWUyOTIwMTEzNzk= 184 500 from missing table name carlmjohnson 222245 closed 0     4 2018-01-26T19:46:45Z 2019-05-21T16:17:29Z 2018-04-13T18:18:59Z NONE  

https://github.com/simonw/datasette/blob/56623e48da5412b25fb39cc26b9c743b684dd968/datasette/app.py#L517-L519 throws an error if it gets an empty list back. Simplest solution is to write a helper func that just says

result = list(await self.execute(name, sql, params)
if result:
    return result[0][0]

and use it anywhere [0][0] is now.

datasette 107914493 issue    
299760684 MDU6SXNzdWUyOTk3NjA2ODQ= 185 Metadata should be a nested arbitrary KV store carlmjohnson 222245 open 0     12 2018-02-23T16:02:07Z 2019-05-13T18:33:33Z   NONE  

I started using the metadata feature and was surprised to find that values are not inherited from the root object down to specific databases and tables. This makes metadata much less useful and requires a lot of pointless duplication.

Ideally, metadata should allow arbitrary key-value pairs, and there should be a way of accessing metadata either in an inherited or non-inherited manner. Something like metadata.page.key vs. metadata.this.key might work as an interface.

datasette 107914493 issue    
314665147 MDU6SXNzdWUzMTQ2NjUxNDc= 216 Bug: Sort by column with NULL in next_page URL carlmjohnson 222245 closed 0     15 2018-04-16T14:03:18Z 2018-04-17T01:45:24Z 2018-04-17T01:45:24Z NONE  

Copy-pasting from https://github.com/simonw/datasette/issues/189#issuecomment-381429213, since that issue is closed:

I think I found a bug. I tried to sort by middle initial in my salaries set, and many middle initials are null. The next_url gets set by Datasette to:


But then None is interpreted literally and it tries to find a name with the middle initial "None" and ends up skipping ahead to O on page 2.

datasette 107914493 issue    

Advanced export

JSON shape: default, array, newline-delimited, object

CSV options:

CREATE TABLE [issues] (
   [node_id] TEXT,
   [number] INTEGER,
   [title] TEXT,
   [user] INTEGER REFERENCES [users]([id]),
   [state] TEXT,
   [locked] INTEGER,
   [assignee] INTEGER REFERENCES [users]([id]),
   [milestone] INTEGER REFERENCES [milestones]([id]),
   [comments] INTEGER,
   [created_at] TEXT,
   [updated_at] TEXT,
   [closed_at] TEXT,
   [author_association] TEXT,
   [pull_request] TEXT,
   [body] TEXT,
   [repo] INTEGER REFERENCES [repos]([id]),
   [type] TEXT
, [active_lock_reason] TEXT, [performed_via_github_app] TEXT);
CREATE INDEX [idx_issues_repo]
                ON [issues] ([repo]);
CREATE INDEX [idx_issues_milestone]
                ON [issues] ([milestone]);
CREATE INDEX [idx_issues_assignee]
                ON [issues] ([assignee]);
CREATE INDEX [idx_issues_user]
                ON [issues] ([user]);