home / github

Menu
  • Search all tables
  • GraphQL API

issue_comments

Table actions
  • GraphQL API for issue_comments

14 rows where issue = 276842536 sorted by updated_at descending

✖
✖

✎ View and edit SQL

This data as json, CSV (advanced)

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

user 2

  • simonw 13
  • ftrain 1

author_association 2

  • OWNER 13
  • NONE 1

issue 1

  • Ability to customize presentation of specific columns in HTML view · 14 ✖
id html_url issue_url node_id user created_at updated_at ▲ author_association body reactions issue performed_via_github_app
350519821 https://github.com/simonw/datasette/issues/153#issuecomment-350519821 https://api.github.com/repos/simonw/datasette/issues/153 MDEyOklzc3VlQ29tbWVudDM1MDUxOTgyMQ== simonw 9599 2017-12-10T02:08:45Z 2017-12-10T02:08:45Z OWNER

Also worth mentioning: as of #160 and #157 the datasette publish now, datasette publish heroku and datasette package commands all know how to bundle up any --static or --template-dir content and include it in the Docker image / Heroku/Now deployment that gets generated.

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
Ability to customize presentation of specific columns in HTML view 276842536  
350519736 https://github.com/simonw/datasette/issues/153#issuecomment-350519736 https://api.github.com/repos/simonw/datasette/issues/153 MDEyOklzc3VlQ29tbWVudDM1MDUxOTczNg== simonw 9599 2017-12-10T02:06:01Z 2017-12-10T02:06:01Z OWNER

@ftrain Datasette 0.14 is now released with all of the above: https://github.com/simonw/datasette/releases/tag/0.14

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
Ability to customize presentation of specific columns in HTML view 276842536  
349874052 https://github.com/simonw/datasette/issues/153#issuecomment-349874052 https://api.github.com/repos/simonw/datasette/issues/153 MDEyOklzc3VlQ29tbWVudDM0OTg3NDA1Mg== simonw 9599 2017-12-07T06:17:33Z 2017-12-07T06:17:33Z OWNER

In #159 I added a mechanism for easily customizing per-column displays, and I've added documentation showing an example of using this mechanism to set certain columns to display as unescaped HTML: http://datasette.readthedocs.io/en/latest/custom_templates.html#custom-templates

This fixes item 3, so I'm closing this ticket!

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
Ability to customize presentation of specific columns in HTML view 276842536  
348255925 https://github.com/simonw/datasette/issues/153#issuecomment-348255925 https://api.github.com/repos/simonw/datasette/issues/153 MDEyOklzc3VlQ29tbWVudDM0ODI1NTkyNQ== simonw 9599 2017-11-30T17:12:03Z 2017-11-30T17:12:03Z OWNER

Documentation is now live for this: http://datasette.readthedocs.io/en/latest/custom_templates.html

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
Ability to customize presentation of specific columns in HTML view 276842536  
348252037 https://github.com/simonw/datasette/issues/153#issuecomment-348252037 https://api.github.com/repos/simonw/datasette/issues/153 MDEyOklzc3VlQ29tbWVudDM0ODI1MjAzNw== ftrain 20264 2017-11-30T16:59:00Z 2017-11-30T16:59:00Z NONE

WOW!

-- Paul Ford // (646) 369-7128 // @ftrain

On Thu, Nov 30, 2017 at 11:47 AM, Simon Willison notifications@github.com wrote:

Remaining work on this now lives in a milestone: https://github.com/simonw/datasette/milestone/6

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/simonw/datasette/issues/153#issuecomment-348248406, or mute the thread https://github.com/notifications/unsubscribe-auth/AABPKHzaVPKwTOoHouK2aMUnM-mPnPk6ks5s7twzgaJpZM4Qq2zW .

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
Ability to customize presentation of specific columns in HTML view 276842536  
348248406 https://github.com/simonw/datasette/issues/153#issuecomment-348248406 https://api.github.com/repos/simonw/datasette/issues/153 MDEyOklzc3VlQ29tbWVudDM0ODI0ODQwNg== simonw 9599 2017-11-30T16:47:45Z 2017-11-30T16:47:45Z OWNER

Remaining work on this now lives in a milestone: https://github.com/simonw/datasette/milestone/6

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
Ability to customize presentation of specific columns in HTML view 276842536  
348245843 https://github.com/simonw/datasette/issues/153#issuecomment-348245843 https://api.github.com/repos/simonw/datasette/issues/153 MDEyOklzc3VlQ29tbWVudDM0ODI0NTg0Mw== simonw 9599 2017-11-30T16:40:02Z 2017-11-30T16:40:02Z OWNER

It is now possible to over-ride templates on a per-database / per-row or per- table basis.

When you access e.g. /mydatabase/mytable Datasette will look for the following:

- table-mydatabase-mytable.html
- table.html

If you provided a --template-dir argument to datasette serve it will look in that directory first.

The lookup rules are as follows:

Index page (/):
    index.html

Database page (/mydatabase):
    database-mydatabase.html
    database.html

Table page (/mydatabase/mytable):
    table-mydatabase-mytable.html
    table.html

Row page (/mydatabase/mytable/id):
    row-mydatabase-mytable.html
    row.html

If a table name has spaces or other unexpected characters in it, the template filename will follow the same rules as our custom <body> CSS classes introduced in 8ab3a16 - for example, a table called "Food Trucks" will attempt to load the following templates:

table-mydatabase-Food-Trucks-399138.html
table.html

It is possible to extend the default templates using Jinja template inheritance. If you want to customize EVERY row template with some additional content you can do so by creating a row.html template like this:

{% extends "default:row.html" %}

{% block content %}
<h1>EXTRA HTML AT THE TOP OF THE CONTENT BLOCK</h1>
<p>This line renders the original block:</p>
{{ super() }}
{% endblock %}
{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
Ability to customize presentation of specific columns in HTML view 276842536  
348103270 https://github.com/simonw/datasette/issues/153#issuecomment-348103270 https://api.github.com/repos/simonw/datasette/issues/153 MDEyOklzc3VlQ29tbWVudDM0ODEwMzI3MA== simonw 9599 2017-11-30T07:16:40Z 2017-11-30T07:16:40Z OWNER

Every template now gets CSS classes in the body designed to support custom styling.

The index template (the top level page at /) gets this:

<body class="index">

The database template (/dbname/) gets this:

<body class="db db-dbname">

The table template (/dbname/tablename) gets:

<body class="table db-dbname table-tablename">

The row template (/dbname/tablename/rowid) gets:

<body class="row db-dbname table-tablename">

The db-x and table-x classes use the database or table names themselves IF they are valid CSS identifiers. If they aren't, we strip any invalid characters out and append a 6 character md5 digest of the original name, in order to ensure that multiple tables which resolve to the same stripped character version still have different CSS classes.

Some examples (extracted from the unit tests):

"simple" => "simple"
"MixedCase" => "MixedCase"
"-no-leading-hyphens" => "no-leading-hyphens-65bea6"
"_no-leading-underscores" => "no-leading-underscores-b921bc"
"no spaces" => "no-spaces-7088d7"
"-" => "336d5e"
"no $ characters" => "no--characters-59e024"
{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
Ability to customize presentation of specific columns in HTML view 276842536  
347928926 https://github.com/simonw/datasette/issues/153#issuecomment-347928926 https://api.github.com/repos/simonw/datasette/issues/153 MDEyOklzc3VlQ29tbWVudDM0NzkyODkyNg== simonw 9599 2017-11-29T17:09:40Z 2017-11-29T17:09:40Z OWNER

OK, that's point 1 covered.

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
Ability to customize presentation of specific columns in HTML view 276842536  
347735598 https://github.com/simonw/datasette/issues/153#issuecomment-347735598 https://api.github.com/repos/simonw/datasette/issues/153 MDEyOklzc3VlQ29tbWVudDM0NzczNTU5OA== simonw 9599 2017-11-29T02:46:31Z 2017-11-29T02:47:27Z OWNER

To style individual columns you'll currently need to use the nth-of-type selector, e.g.:

td:nth-of-type(5):before { white-space: pre }
{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
Ability to customize presentation of specific columns in HTML view 276842536  
347735724 https://github.com/simonw/datasette/issues/153#issuecomment-347735724 https://api.github.com/repos/simonw/datasette/issues/153 MDEyOklzc3VlQ29tbWVudDM0NzczNTcyNA== simonw 9599 2017-11-29T02:47:14Z 2017-11-29T02:47:14Z OWNER

(This only addresses point 2 in your issue description - points 1 and point 3 are still to come)

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
Ability to customize presentation of specific columns in HTML view 276842536  
347735334 https://github.com/simonw/datasette/issues/153#issuecomment-347735334 https://api.github.com/repos/simonw/datasette/issues/153 MDEyOklzc3VlQ29tbWVudDM0NzczNTMzNA== simonw 9599 2017-11-29T02:45:03Z 2017-11-29T02:45:03Z OWNER

@ftrain OK I've shipped the first version of this. Here's the initial documentation:

Create a metadata.json file that looks like this:

{
    "extra_css_urls": [
        "https://simonwillison.net/static/css/all.bf8cd891642c.css"
    ],
    "extra_js_urls": [
        "https://code.jquery.com/jquery-3.2.1.slim.min.js"
    ]
}

Then start datasette like this:

datasette mydb.db --metadata=metadata.json

The CSS and JavaScript files will be linked in the <head> of every page.

You can also specify a SRI (subresource integrity hash) for these assets:

{
    "extra_css_urls": [
        {
            "url": "https://simonwillison.net/static/css/all.bf8cd891642c.css",
            "sri": "sha384-9qIZekWUyjCyDIf2YK1FRoKiPJq4PHt6tp/ulnuuyRBvazd0hG7pWbE99zvwSznI"
        }
    ],
    "extra_js_urls": [
        {
            "url": "https://code.jquery.com/jquery-3.2.1.slim.min.js",
            "sri": "sha256-k2WSCIexGzOj3Euiig+TlR8gA0EmPjuc79OEeY5L45g="
        }
    ]
}

Modern browsers will only execute the stylsheet or JavaScript if the SRI hash matches the content served. You can generate hashes using www.srihash.org

This isn't shipped in a release yet, but you can still access these features in datasette publish like so:

datasette publish now mydb.db --metadata=metadata.json --branch=master

The --branch=master option will pull the latest master build of Datasette from GitHub.

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
Ability to customize presentation of specific columns in HTML view 276842536  
347051331 https://github.com/simonw/datasette/issues/153#issuecomment-347051331 https://api.github.com/repos/simonw/datasette/issues/153 MDEyOklzc3VlQ29tbWVudDM0NzA1MTMzMQ== simonw 9599 2017-11-27T00:23:40Z 2017-11-27T03:58:49Z OWNER

One quick fix could be to add a extra_css_url key to the metadata.json format (which currently hosts title, license_url etc) - if populated, we can inject a link to that stylesheet on every page. We could add a few classes in strategic places that include the database and table names to give people styling hooks.

While we're at it, an extra_js_url key would let people go really nuts!

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
Ability to customize presentation of specific columns in HTML view 276842536  
347050235 https://github.com/simonw/datasette/issues/153#issuecomment-347050235 https://api.github.com/repos/simonw/datasette/issues/153 MDEyOklzc3VlQ29tbWVudDM0NzA1MDIzNQ== simonw 9599 2017-11-27T00:06:24Z 2017-11-27T00:06:24Z OWNER

I've been thinking about 1. a bit - I actually think it would be fine to have a rule that says "if the contents of the cell starts with http:// or https:// and doesn't contain any whitespace, turn that into a link". If you need the non-linked version that will always be available in the JSON.

For the other two... I think #12 may be the way to go here: if you can easily over-ride the row.html and table.html templates for specific databases you can easily set pre-formatted text or similar for certain values - maybe even with CSS that targets a specific table column.

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
Ability to customize presentation of specific columns in HTML view 276842536  

Advanced export

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

CSV options:

CREATE TABLE [issue_comments] (
   [html_url] TEXT,
   [issue_url] TEXT,
   [id] INTEGER PRIMARY KEY,
   [node_id] TEXT,
   [user] INTEGER REFERENCES [users]([id]),
   [created_at] TEXT,
   [updated_at] TEXT,
   [author_association] TEXT,
   [body] TEXT,
   [reactions] TEXT,
   [issue] INTEGER REFERENCES [issues]([id])
, [performed_via_github_app] TEXT);
CREATE INDEX [idx_issue_comments_issue]
                ON [issue_comments] ([issue]);
CREATE INDEX [idx_issue_comments_user]
                ON [issue_comments] ([user]);
Powered by Datasette · Queries took 25.601ms · About: github-to-sqlite
  • Sort ascending
  • Sort descending
  • Facet by this
  • Hide this column
  • Show all columns
  • Show not-blank rows