{"html_url": "https://github.com/simonw/datasette/issues/1831#issuecomment-1276856836", "issue_url": "https://api.github.com/repos/simonw/datasette/issues/1831", "id": 1276856836, "node_id": "IC_kwDOBm6k_c5MG0oE", "user": {"value": 9599, "label": "simonw"}, "created_at": "2022-10-12T23:57:28Z", "updated_at": "2022-10-12T23:57:28Z", "author_association": "OWNER", "body": "As part of this I think I want `request` to always be available in the template context, which will remove the need for https://datasette.io/plugins/datasette-template-request", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 1397084281, "label": "If user can see table but NOT database/instance nav links should not display"}, "performed_via_github_app": null} {"html_url": "https://github.com/simonw/datasette/issues/1831#issuecomment-1276693475", "issue_url": "https://api.github.com/repos/simonw/datasette/issues/1831", "id": 1276693475, "node_id": "IC_kwDOBm6k_c5MGMvj", "user": {"value": 9599, "label": "simonw"}, "created_at": "2022-10-12T20:23:01Z", "updated_at": "2022-10-12T20:23:01Z", "author_association": "OWNER", "body": "Here are all the places that display that navigation bar at the moment:\r\n\r\nhttps://github.com/simonw/datasette/blob/b7fec7f9020b79c1fe60cc5a2def86b50eeb5af9/datasette/templates/row.html#L18-L25\r\n\r\nhttps://github.com/simonw/datasette/blob/b7fec7f9020b79c1fe60cc5a2def86b50eeb5af9/datasette/templates/table.html#L19-L25\r\n\r\nhttps://github.com/simonw/datasette/blob/b7fec7f9020b79c1fe60cc5a2def86b50eeb5af9/datasette/templates/query.html#L21-L27\r\n\r\nhttps://github.com/simonw/datasette/blob/b7fec7f9020b79c1fe60cc5a2def86b50eeb5af9/datasette/templates/error.html#L5-L10\r\n\r\nhttps://github.com/simonw/datasette/blob/b7fec7f9020b79c1fe60cc5a2def86b50eeb5af9/datasette/templates/database.html#L12-L17\r\n\r\nhttps://github.com/simonw/datasette/blob/b7fec7f9020b79c1fe60cc5a2def86b50eeb5af9/datasette/templates/show_json.html#L7-L12\r\n\r\nhttps://github.com/simonw/datasette/blob/b7fec7f9020b79c1fe60cc5a2def86b50eeb5af9/datasette/templates/permissions_debug.html#L25-L30\r\n\r\nhttps://github.com/simonw/datasette/blob/b7fec7f9020b79c1fe60cc5a2def86b50eeb5af9/datasette/templates/permissions_debug.html#L25-L30t\r\n\r\nInteresting to note that failing to include that `super()` call means the nav menu itself will not be rendered:\r\n\r\nhttps://github.com/simonw/datasette/blob/b7fec7f9020b79c1fe60cc5a2def86b50eeb5af9/datasette/templates/base.html#L20-L49", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 1397084281, "label": "If user can see table but NOT database/instance nav links should not display"}, "performed_via_github_app": null} {"html_url": "https://github.com/simonw/datasette/issues/1831#issuecomment-1278198700", "issue_url": "https://api.github.com/repos/simonw/datasette/issues/1831", "id": 1278198700, "node_id": "IC_kwDOBm6k_c5ML8Os", "user": {"value": 9599, "label": "simonw"}, "created_at": "2022-10-13T21:29:09Z", "updated_at": "2022-10-13T21:29:09Z", "author_association": "OWNER", "body": "I'm going to commit the code now, but then I need to add some extra tests to ensure the breadcrumb permission display logic works correctly.", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 1397084281, "label": "If user can see table but NOT database/instance nav links should not display"}, "performed_via_github_app": null} {"html_url": "https://github.com/simonw/datasette/issues/1831#issuecomment-1276882359", "issue_url": "https://api.github.com/repos/simonw/datasette/issues/1831", "id": 1276882359, "node_id": "IC_kwDOBm6k_c5MG623", "user": {"value": 9599, "label": "simonw"}, "created_at": "2022-10-13T00:36:09Z", "updated_at": "2022-10-13T00:36:19Z", "author_association": "OWNER", "body": "It's important that, however this works, it supports custom templates changing how the breadcrumbs are displayed. Probably needs a `_crumbs.html` template.", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 1397084281, "label": "If user can see table but NOT database/instance nav links should not display"}, "performed_via_github_app": null} {"html_url": "https://github.com/simonw/datasette/issues/1831#issuecomment-1276848084", "issue_url": "https://api.github.com/repos/simonw/datasette/issues/1831", "id": 1276848084, "node_id": "IC_kwDOBm6k_c5MGyfU", "user": {"value": 9599, "label": "simonw"}, "created_at": "2022-10-12T23:39:02Z", "updated_at": "2022-10-12T23:39:02Z", "author_association": "OWNER", "body": "Made some notes on the Jinja documentation while thinking about the best way to do this:\r\n- https://github.com/simonw/public-notes/issues/4", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 1397084281, "label": "If user can see table but NOT database/instance nav links should not display"}, "performed_via_github_app": null} {"html_url": "https://github.com/simonw/datasette/issues/1831#issuecomment-1276706181", "issue_url": "https://api.github.com/repos/simonw/datasette/issues/1831", "id": 1276706181, "node_id": "IC_kwDOBm6k_c5MGP2F", "user": {"value": 9599, "label": "simonw"}, "created_at": "2022-10-12T20:34:00Z", "updated_at": "2022-10-12T23:43:39Z", "author_association": "OWNER", "body": "Maybe new template functions: `table_crumbs(table, database)` and `database_crumbs(database)` and `instance_crumbs()` - which know how to both check the permissions and display the `
\r\n {% for item in items %}\r\n {{ item.label }}\r\n {% if not loop.last %}\r\n /\r\n {% endif %}\r\n {% endfor %}\r\n
\r\n{% endif %}\r\n{%- endmacro %}\r\n```\r\nThis means custom template authors can use their own `_crumbs.html` template to do something different with the breadcrumbs.\r\n\r\nIn the actual templates I display breadcrumbs like this:\r\n\r\n```html+jinja\r\n{% block crumbs %}\r\n{{ crumbs.nav(request=request, database=database) }}\r\n{% endblock %}\r\n```\r\nPass `database=` to get `home / database_name` - pass `table=` as well to get `home / database_name / table_name` - if you just send `request=` you just get `home`.\r\n\r\nI've also made the default base template show the `home` breadcrumbs - other pages such as `table.html` and `row.html` can then over-ride `{% block crumbs %}` to get different breadcrumbs.\r\n\r\n\r\n", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 1397084281, "label": "If user can see table but NOT database/instance nav links should not display"}, "performed_via_github_app": null} {"html_url": "https://github.com/simonw/datasette/issues/1831#issuecomment-1278175798", "issue_url": "https://api.github.com/repos/simonw/datasette/issues/1831", "id": 1278175798, "node_id": "IC_kwDOBm6k_c5ML2o2", "user": {"value": 9599, "label": "simonw"}, "created_at": "2022-10-13T21:02:52Z", "updated_at": "2022-10-13T21:02:52Z", "author_association": "OWNER", "body": "This patch to `default_permissions.py` made debugging easier: https://gist.github.com/simonw/daddf022e75a98ea6246ac1e12dc8759", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 1397084281, "label": "If user can see table but NOT database/instance nav links should not display"}, "performed_via_github_app": null}