2014-01-06 43 views
0

我已成功爲CKAN網站添加了一組數據。它還可以預覽數據集。如何啓用CKAN數據集的API按鈕?

下面是該數據的URL設定

testckan.com:5000/dataset/my-data1/resource/4c2647ca-a4ab-4d20-8119-5c3da9d4ae14 

通過添加api/rest/到URL如下使得能夠露出數據集作爲一個JSON服務。

testckan.com:5000/api/rest/dataset/my-data1/resource/4c2647ca-a4ab-4d20-8119-5c3da9d4ae14 

所有我想要做的就是添加一個按鈕,以便用戶可以查看數據設置爲JSON,而不是它是不是用戶友好的URL鍵入它。

我在

http://data.gov.uk/dataset/bona-vacantia-estates-advertisements 

下API & APPS看到類似的按鈕。請看下面的圖片。

enter image description here

如何啓用API按鈕設置像上面CKAN數據?

回答

3

您將不得不修改軟件包(又名數據集)視圖的前端模板。您可以將此更改添加到您自己的CKAN源代碼副本中,或者像亨德里克提及的和data.gov.uk人員完成的那樣,創建一個CKAN extension來修改模板。

您的示例功能是爲data.gov.uk網站實施的,該網站是開源的,可在GitHub中找到。具體的部分是在read_common.html

<b>API: </b><a href="${h.url_for(controller='api', register='package', action='show', id=c.pkg.name, ver='2')}"> 
${h.url_for(controller='api', register='package', action='show', id=c.pkg.name, ver='2')} 
</a> 

url_for function從ckan.lib.helpers模塊,「可用於模板作爲‘H’」根據CKAN文檔,所以你應該能夠使用它就像上面的代碼一樣直接在模板中。

+0

一旦將代碼放入HTML文件,就會發出500錯誤。 – Techie

+0

你可能會發現新的主題教程很有用:http://docs.ckan.org/en/latest/theming/index.html –

1

AFAIK沒有CKAN本身的功能,因此無法啓用。但是,您可以輕鬆地將其添加到擴展中。

+0

如果你能請至少說明如何完成它。 – Techie