[注:最初の2つの答え、私が書いたものを含み、まだ「オプション」fql.multiqueryの問題に対処していない。]私はFacebookのFQLを使用していたとき、私は学校のリストを取得することができますfacebook fqlを使って、学校の場所を知るにはどうすればいいですか?
私は出席している、または友人が出席している。具体的には、私は学校の名前を得ることができ、それはFacebookのIDです。しかし、私はこれらの学校についてのより深い情報をどのように照会するのか分かりません。
具体的には、学校の所在地を知りたいと思います。しかし、私はどのFacebookのグラフ実体(または他のもの)がそれらの学校児童の一部であるのか分かりません。
これらの学校がどこにあるのかをFacebookからどのように知ることができますか?
オプション:最初の場所で学校のリストを返す同じマルチクエリでこれを行うことができればさらに良いでしょう(これはmy IDのuserテーブルとuserテーブルに対する別のクエリです私の友人のいくつかのidsのために)。
上記の段落で説明したオプション部分の拡張バージョンです(別の質問としてこれを追加しましたが、例示的なデータをより関連性のあるものにするために、私はそれが黙って消えたことを知りました。私は、あまりにも似ている質問を除外するために設計されたスタックオーバーフローのいくつかの機能を乗り越えたと仮定していますので、代わりに、これは私が上の段落の意味を明確にしたものです)
Facebookのjavascript sdkを使用すると、これは自動的に失敗します:
FB.login(function(response){
disp('loginResponse', response);
var userQuery= FB.Data.query(
'select uid,name,education from user where uid= {0}'
, response.session.uid);
var friendlist = FB.Data.query(
'select uid2 from friend where uid1 = {0} order by rand() limit 10'
, response.session.uid);
var friends = FB.Data.query(
'select uid,name,education from user where uid in (select uid2 from {0})'
, friendlist);
var friendSchools= FB.Data.query(
'select page_id,name,location from page where page_id in (select education.school.id from {0})'
, friends);
self.queries= [userQuery, friendlist, friends, friendSchools];
FB.Data.waitOn(queries
, function() {alert(1)});
})
私は友達を削除するとクエリ配列から学校要素は、それだけで正常に動作します、と友人は、このようなオブジェクトによって表されることがあります、そのクエリができるように
{
uid: '...',
name: '...',
education:
[
{
school:
{
id: '115920001751600',
name: 'Burlington High School'
},
year:
{
id: '138792749476094',
name: '1978'
},
type: 'High School'
},
{
school:
{
id: '20697868961',
name: 'Boston University'
},
degree:
{
id: '188387604516411',
name: 'BS'
},
year:
{
id: '103823546338323',
name: '1982'
},
type: 'College'
}
]
}
だから、どのように私はfriendSchoolsクエリのWHERE句を再構築します実行された?
つまり、fquery.meryを使用して、マルチクエリーの他の場所で返された学校(または他のそのようなエンティティ)に関する情報を見つけるにはどうすればよいですか?
それは、このことは注目に値しますFacebook自体が情報を検証したり入力したりすることはないため、取得する情報が正確であるとは限りません。 –
わかりました。確かに、ID自体はグラフ上のノードであり、それ以上の資格は必要ありません。つまり、バッチAPIは私の目的では醜いように見えます(あなたは
そして、私はページテーブルを照会したいと思っています。たとえば、次のように
(それは私がまだマルチクエリのwhere句にリストに私の教育の学校のIDを抽出する方法を把握しようとしている、と述べた。)
出典
2011-07-19 16:42:09 rdm