Невозможно экспортировать дополнительные данные из Freebase с помощью Jquery - PullRequest
2 голосов
/ 25 декабря 2011

вопрос новичка,

Я пытаюсь использовать Freebase Suggest в качестве ресурса тегов для моего проекта Django. Я хочу извлечь имя элемента, тип и идентификатор. Например, как вы можете видеть на скриншоте , я хочу извлечь имя 'Pearl Jam', его идентификатор '/ en / pearl_jam' и тип 'band'.

Как я могу опубликовать эти данные в моем представлении?

Используя функцию ниже, я могу создавать только ссылки на теги.

$(function(){
   $("#myinput").suggest().bind("fb-select", function(e, data) {
     $('#myinput').val(''); // clear the input
     $('#returnValueOfFreebase').append('<a href="http://freebase.com/view'+ data.id +'">'+      data.name +'</a>  ')})
});

Ответы [ 2 ]

2 голосов
/ 26 декабря 2011

У вас уже есть имя и идентификатор из data.name и data.id.Вы также можете получить доступ к известному типу из функции обратного вызова, используя data['n:type'].name, например:

$(function(){
   $("#myinput").suggest().bind("fb-select", function(e, data) {
     $('#myinput').val(''); // clear the input
     $('#returnValueOfFreebase').append('<a href="http://freebase.com/view'+ data.id +'">'+ data.name +'</a> (' + data['n:type'].name + ')')})
});

Если вы хотите захватить эти данные и опубликовать их в своем веб-приложении,Вы можете создать некоторые скрытые входы и установить их значение с помощью обратного вызова Freebase.Как это:

<input id="notable_type" name="notable_type" type="hidden" />

$("#myinput").suggest().bind("fb-select", function(e, data) {
    $("#notable_type").val(data['n:type'].id);
});
1 голос
/ 25 апреля 2014

Новые API используют данные ['notable'] вместо данных ['n: type']

...