トップページ⇒php
351コメント127KB

Google App Engine for Python 6アプ目

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2013/01/19(土) 13:49:13.57ID:???
Google App Engine
http://code.google.com/appengine/

■過去スレ
Google App Engine
http://pc11.2ch.net/test/read.cgi/php/1207754942/
Google App Engine 2アプ目
http://pc11.2ch.net/test/read.cgi/php/1243654802/
Google AppEngine 3アプ目
http://hibari.2ch.net/test/read.cgi/php/1267057923/
Google App Engine 3アプ目 (実質4)
http://kohada.2ch.net/test/read.cgi/php/1267094290/
Google App Engine for Python 4アプ目 (実質5)
http://kohada.2ch.net/test/read.cgi/php/1302598469/

■リンク集
はてなブックマーク
http://b.hatena.ne.jp/t/gae
http://b.hatena.ne.jp/t/Google%20App%20Engine
Delicious
http://delicious.com/popular/gae
http://delicious.com/popular/googleappengine

■参考サイト
App Engine ギャラリー
http://appgallery.appspot.com/
ドキュメント
http://code.google.com/appengine/docs/python/overview.html
0016nobodyさん2013/01/21(月) 11:55:41.04ID:???
■紹介・Tips
01.Google App Engine 最近の動向
http://ameblo.jp/cabeat-e/entry-11394475313.html
03.Google App Engineで独自ドメイン&SSL(1/2)
http://ameblo.jp/cabeat-e/entry-11395844646.html
06.Google App Engineのデータストア バックアップとリストア
http://ameblo.jp/cabeat-e/entry-11396018265.html
「作ればわかる! Google App Engine for Java プログラミング」本をPythonで書いてみる (1)
http://d.hatena.ne.jp/thinkAmi/20120819/1345357405
Google App EngineのTwitter BotをFlaskとTweepyで作る
http://d.hatena.ne.jp/emergent/20120422/1335076686
Google App EngineのdatastoreをMaster/SlaveからHRDに変更するには?という記事を書こうと思ったんですが…
http://d.hatena.ne.jp/furyu-tei/20120909/1347130062

こんなとこかな
フレームワークの紹介とか要る?
0017nobodyさん2013/01/21(月) 12:40:14.83ID:???
すげーGJ
0018162013/01/21(月) 13:09:38.21ID:???
サービス開始から結構時間経ってて
古い情報を元に始めると損する場合が結構あるから
まずこの記事ぐらいはざっと眺めた方が良い

01.Google App Engine 最近の動向|CA Beat エンジニアのブログ
http://ameblo.jp/cabeat-e/entry-11394475313.html

無料で使える!ってだけで群がった当初の情報だと
Hello World程度の浅い紹介とかしか無いけど
アプリケーションやサービスにどう適用するのかが本題
色々揃ってきてようやくライブラリやノウハウも出てきた

HRDの理解とDatastoreのバックアップ・リストア
Warmup等含めたインスタンスの管理
極力Queryを減らすKey志向の設計
memcache, Frontend Cacheによるキャッシュコントロール
辺りは押さえとくべき

NDBは使いやすいし自然とキー志向になるし
自動キャッシュがとてもありがたく
DBで微妙だったプロパティとか整理されてるんでおすすめ
0019162013/01/21(月) 13:13:50.09ID:???
NDBは辞めちゃったけどGvR謹製だし
StructuredProperty, JsonProperty, PicklePropertyとか
楽できるプロパティが嬉しい

Searchは今後Appengineで欠かせないサービスになる
早めにインデックスやドキュメントの管理と
使いどころを把握しとくと良い
まだ価格が公開されてない上日本語対応は微妙だけど
DatastoreのQueryで困るケースが色々解決できる
Geo検索もできるし
0020nobodyさん2013/01/21(月) 13:31:13.49ID:Ez5Yieb2
あげ
0021nobodyさん2013/01/21(月) 17:00:25.72ID:???
モバイルAdSenseをどうにかPythonに埋め込む方法は無いですかね?
0022nobodyさん2013/01/21(月) 18:11:30.65ID:???
モバイルAdSenseってまだappengineで上手く動かないんだっけ?

https://groups.google.com/forum/?fromgroups=#!topic/google-app-engine-japan/dYItmifWmwA
ここにあるみたいにUAが問題かもよ
0023nobodyさん2013/01/21(月) 18:57:03.79ID:???
その問題クリティカルすぎないか?
mobile adsense使えないとマネタイズ成り立たないサービスには使えないじゃないか…
0024nobodyさん2013/01/21(月) 19:07:48.94ID:???
色々ググったら英語の資料に
「独自ドメインじゃないとカウントされない」
とあったが本当かね?
appspot.comはgoogle管理だからカウント除外されるのか
(売上に含めちゃったら面倒だから?)
0025nobodyさん2013/01/21(月) 19:08:58.13ID:???
誰か独自ドメインでmobile adsenseを正常動作出来てる人いる?
0026nobodyさん2013/01/22(火) 11:20:44.44ID:B0nURCWo
前スレのスレッドセーフの件は誰も触れてないけど
このスレには分かる人いないのか
0027nobodyさん2013/01/22(火) 11:31:33.62ID:???
言いだしっぺの法則
君が全力で調べてその調査結果を是非世に公表してくれたまえ
0028nobodyさん2013/01/22(火) 11:41:53.35ID:B0nURCWo
いや俺も全然わかんなくて気になってるのよ
スレッドセーフなプログラムになってないと
事故が起こるかもよ?っぽいんだけど
どうやったらスレッドセーフにできるのかとか
どういう時どういう書き方したらいいのかとか
探したんだけどさっぱりわからん
0029nobodyさん2013/01/22(火) 15:04:50.63ID:???
英語読むっきゃねーな
0030nobodyさん2013/01/22(火) 15:46:25.12ID:???
日本語の情報が無いってことは
調べている人自体が少ないのだろう
◯◯を調べたけど◯◯がわからない、的な情報でもいいから
誰かがどこかにblogか何かで書いていくしかないね
0031nobodyさん2013/01/23(水) 04:04:12.77ID:???
日進月歩でグーグル側が更新しちゃうから追いつかないんだよな

linux関係でググるといまだに古い資料が出てきちゃう現象
0032nobodyさん2013/01/23(水) 10:44:20.92ID:???
俺の調べたThreadsafeに関係ありそうなこと

・マルチスレッドプログラミングでの最大の問題点は
スレッド間で誤って同じデータを触ってしまうこと

・Pythonはそもそもグローバルインタープリタロック(GIL)という仕組みで
インタプリタでは同時に複数のスレッドが動かない

・GAEのThreadsafeはインスタンスを有効活用するためのもの
(単一のインスタンスで複数のリクエストを捌ける?)

・わけがわからん
GILがあるから原則スレッドセーフというかマルチスレッドできない??
2.7環境だとGILが無くなった??
それともThreadingモジュールを使う場合だけ関係ある話??

たすけて
0033nobodyさん2013/01/23(水) 14:06:23.26ID:LxbWzKRZ
プログラミング初心者ですが質問です
Pythonを利用してWebサイトを作りたいと思っています

必要なツールや知識は何がありますか?

Python、GAE、HTML←この3つの知識があれば作れますか?
足りない知識やツールなどがあれば教えて下さい
0034nobodyさん2013/01/23(水) 14:24:13.41ID:???
フロントエンド向けキーワード:
  HTML5
  CSS3
  SassとCompass(Scout)
  jQuery
  CofeeScript

バックエンド向けキーワード:
  python2.7
  webapp2
  flask
  
その他(バージョン管理):
  Mercurial または Git
0035nobodyさん2013/01/23(水) 14:37:32.98ID:LxbWzKRZ
普通にサーバー向け
クライアント向けって書いても良かったんじゃないかと
0036nobodyさん2013/01/23(水) 15:56:37.21ID:???
フロントエンド向けキーワード: 追加
TypeScript
WebGL
backbone.js
node.js

バックエンド向けキーワード: 追加
node.js
wsgi
django
werkzeug
0037nobodyさん2013/01/23(水) 16:52:56.59ID:LxbWzKRZ
>>36
全て習得済みでした・・・
0038nobodyさん2013/01/23(水) 17:13:58.87ID:shCR0fI3
SearchのGeoPoint試してるやついない?
0039nobodyさん2013/01/24(木) 20:03:07.12ID:T/pnfIUt
MapReduceの価格表が見当たらないんだけどどこにある?
0040nobodyさん2013/01/24(木) 20:10:56.87ID:???
今のGAEで可能なMapReduceは似非で
Quotaとかも用意されてない力技じゃなかったっけ?
0041nobodyさん2013/01/24(木) 20:18:38.39ID:???
普通のfrontend instancesとして課金されるのかな。
それともbackendsとして?
0042nobodyさん2013/01/25(金) 09:57:59.49ID:mBZPWIR9
Frontendじゃなかったっけ?
それ以外に当然Datastoreやその他の割り当ても使う
0043nobodyさん2013/01/27(日) 23:49:10.41ID:???
始めたばっかりなんだが
上げようとしたらアプリ固有のパスワード入れろって怒られて、そんなん設定したっけ?と思ったが、二段階認証のほうのアレねw
紛らわしい名前w

あ、もし公式以外で良さげなサンプル集サイト知ってたら教えて下さい。
0044nobodyさん2013/01/28(月) 11:18:46.39ID:FBfOV1KR
>>43
とりあえずgithubが鉄板
https://github.com/search?l=Python&;p=1&q=appengine&ref=commandbar

https://github.com/search/advanced
からだったらスター数とかfork数で絞れるし

どのサンプルにせよ古いコードはフレームワーク周りが鬼門
ndb使ってるなら比較的最近だから判断材料になるね
ndb使ってるプロジェクトはリポジトリ検索だと探しにくいから
コード検索で"appengine ndb"とかやると良いよ
0045nobodyさん2013/01/28(月) 14:14:36.64ID:???
>>44
ああ、なるほど!そこでのgithubなのか
名前は見かけるけど、プログラミング自体初心でgithub使ったこともなく、頭がそこまで回りませんでした
gae sampleとかで検索しても良いの出ないんで、普通はどうしてるのだろうと思ったら、そういうサイトを活用してるんですね!

仕様も結構変わってるみたいですもんねえ
色々と為になる助言ありがとうございます。
0046nobodyさん2013/01/28(月) 20:08:59.02ID:???
GAEのmapreduceはmapperで登録するkey value pairが
datastoreに記録されるの・・・・?
0047nobodyさん2013/01/30(水) 12:47:10.50ID:???
Datastoreのindexedってどうしてる?
インデックスのみでクエリ行けるようにすべきなのか
なるべくインデックス作らずkey -> memcacheにすべきなのか
答えは無いだろうけど方針とかある?
0048nobodyさん2013/01/31(木) 12:04:59.41ID:fFNHcJ57
俺は後者だな
ndb使ってるとkeyonlyからget_multi()で引っ張れば
キャッシュが自動で効いて手軽だし
0049nobodyさん2013/02/01(金) 13:01:16.52ID:???
さすがにHRDに移行しようと思うんですが
リハーサルとかできますか?
ツールを使うと問答無用で移行してしまいますか?
ツールで移行したデータを削除して
最初からやり直すことはできますか?
0050nobodyさん2013/02/03(日) 09:01:45.80ID:???
いつまでたってもApple Push Notoficaton 送れないし、Google Compute Engine使えないしマジなんなのこの糞サーバー
0051nobodyさん2013/02/03(日) 13:34:10.49ID:???
愚痴はtwitterでどうぞ
0052nobodyさん2013/02/04(月) 08:52:16.37ID:FzpmjJ5g
この間Socketのクローズテスト募集してたから
Notificatonなり任意の接続もその内できそうだけどね
0053nobodyさん2013/02/04(月) 17:10:39.89ID:???
GAEjaのフォーラムに痛いおっさんが赤っ恥な投稿してんな
ろくに英語も読めないのにクレーム風の物言いとか凄い感覚だわ
0054nobodyさん2013/02/06(水) 17:27:50.06ID:???
すごく基本的なこと質問します
課金は1週間ごとですよね?
メールの100通制限は最初の支払いが終われば解除されるとあるけど

1. 最初の支払いって課金有効にしてから一週間目?
2. もしその1週間の間に無料枠超過しなかったら支払い発生しないからずっと100通制限?

という二点がきになってます
というのもサービスを公開すると絶対に100通でおさまるわけがないし
メール配信以外では負荷がすくないのでテスト段階では無料枠に収まってるので
毎月最低$9は取られるはずだけどこれは月末まで待たないとダメ→メールの制限は月末までとれないだとマジ困るし
なにがなんだかもう
0055nobodyさん2013/02/06(水) 19:23:04.47ID:???
1.は多分そう

2.は超過云々じゃなく課金有効後一定時間経過だったはず
> Note: it may take 15-20 minutes for resource allocation changes to take effect.

そもそも毎月$9じゃなく毎週$2.1だよ
課金有効にした時点で毎週取られる

あくまで全部多分の話
金が絡むことをこんな場所できいちゃだめ
公式フォーラム行きなさいな
0056nobodyさん2013/02/06(水) 19:25:49.31ID:???
そう言えば3月から月払い対応するって連絡もきてたな
0057nobodyさん2013/02/06(水) 20:45:29.23ID:???
>>55
ありがとう
> Note: it may take 15-20 minutes for resource allocation changes to take effect.
は多分認証中ステータス?のことだと思う
https://developers.google.com/appengine/docs/quotas#Mail
ここに「100 messages daily until first charge cleared」ってあるから最初の引き落としだと思ったんだ
今5日たってるけどまだなので2日まってみる
あまりかかるようなら公式で聞いてみます
0058nobodyさん2013/02/12(火) 20:18:44.12ID:C70uKqkZ
ここ最近で読んだほうがよさそうな情報

appengine ja night #23 #ajn23 に行ってきました - @thorikiriのてょりっき
http://d.hatena.ne.jp/t-horikiri/20130123/1358958603

appengine ja night #23 が終わりました - スティルハウスの書庫
http://d.hatena.ne.jp/kazunori_279/20130209/1360394339

Blog @vierjp : Google App Engineパターン (appengine ja night #23)
http://blog.vier.jp/2013/02/google-app-engine-appengine-ja-night-23.html

老人Zの毎日更新ブログ Google App Engine Billing Migration Notice
http://peracola.blog90.fc2.com/blog-entry-1655.html

採用事例:ソーシャルイントロクイズ 『SongPop』
http://gae-p.blogspot.jp/2013/02/songpop.html

Google App Engineでデータストアに保存したエンティティーのキーを取得する方法 | Tech Booster
http://techbooster.org/gae/15069/#more-15069

今日のPython: Google App Engine のアップロードを2段階認証プロセスに対応させる
http://blog1.erp2py.com/2012/02/google-app-engine-2.html
0059nobodyさん2013/02/12(火) 21:08:44.34ID:???
ためになった
0060nobodyさん2013/02/12(火) 23:29:54.27ID:???
最近GAE始めたばかりなので
offsetの事とか全然知らなかった
危ない危ない
その他の事はちょっと難しすぎて手に負えない感じだなあ
0061nobodyさん2013/02/13(水) 00:08:46.72ID:???
GAEのページングは地味に苦労する

cursor使うと
|< |<< [1][2][3][4][5]…..[20][21][22] >>| >|
こういう飛ばし飛ばしページング出来ないのがね

まぁ自分の経験上、ページングみるときに飛ばしながら見ることはないので
「次へ」と「戻る」だけでナビゲーションは事足りるんだけどね
0062nobodyさん2013/02/13(水) 01:14:29.98ID:???
なんだ、調べてみると cursor はそういう仕様なのか・・・
アンチパターンだの書いてあったが限定的すぎるわ
0063nobodyさん2013/02/13(水) 01:30:36.33ID:???
ああ、でも cursor 使わないと今度は
大量のデータのページングが行えないのか
どっちつかずだ
0064nobodyさん2013/02/13(水) 10:25:37.71ID:???
単純なトレードオフだと思うけどな

件数やページ指定必須のページングしたいなら
offsetでコスト高

TwitterやFacebookみたいに順次次のページが得られれば良いなら
cursor使ってコスト低

cursorがまだ無い頃に紹介されてた独自のcursor的設計とか
offsetとcursorを上手く組み合わせれば
もうちょっとバランスよくなるかも知れんが
結局使える範囲が狭くなるな
0065nobodyさん2013/02/14(木) 12:50:13.73ID:???
1.75ででるやん
しょぼいやん
0066nobodyさん2013/02/14(木) 23:53:01.40ID:UFQyynMf
全文検索の料金きまらねえと案件につかえねえ
0067nobodyさん2013/02/15(金) 02:31:31.12ID:???
>>66
自分で実装すればいいじゃん
適当な形態素解析ライブラリで検索対象の文章を分かち書きして
それをリストプロパティにぶっ込んでデータストアに保存(Create)

検索時(Read)は検索クエリを同様に形態素解析ライブラリで分かち書き
複数個の単語が帰ってくるから、それを元にリストプロパティから等価クエリ(=)で引っ張ってきてKeyリストを取得

得られたKeyリスト(複数)をAnd集合演算、最終結果のKeyリストをもとに
データストアから実態を取得でおk

Javaのほうだと実際にこれをやってる人何人かいる
0068nobodyさん2013/02/15(金) 10:04:33.91ID:???
Google Cloud Endpointというのを使うと
サーバ側でコードをあまり書かずに
クライアント側で結構完結できてしまう
ということなのかな?
0069nobodyさん2013/02/15(金) 14:08:39.60ID:???
>>67
全文検索の独自実装なんてとっくにやっとるのよ
それが高コストすぎるからSearch APIに期待してるわけで
Datastoreでアホみたいな高コスト要因になるクエリも
Searchなら多分そんなややこしいもんじゃない筈だしね

>>68
Endpointsはスマホアプリとかのバックエンドを
最低限のコードで実現できる仕組みだな
テスト版がJavaしかなくて残念だったけど
Pythonも対応したのでその内評価してみるわ
0070nobodyさん2013/02/15(金) 15:54:54.87ID:???
どなたかアイデアいただけませんか。
以下の様な MyModel があったとします。

class MyModel(ndb.Model):
 message = StringProperty()
 date = ndb.DateTimeProperty(auto_now_add=True)

MyModel.message には None 状態のデータが入る事があり、
message 内文字列が存在する MyModel を取得するために
以下の様な記述を行なっています。

q = Model.query(Model.message > None)

ここで、更に MyModel にデータが登録された日付で検索を行う条件を加えたい所ですが
不等号による検索を行なっているため
date での order は不可状態。
よって、message を登録する際は文頭に 日付の時間を必ず追加するようにしています。

これで解決できてはいるのですが、もっとスマートな方法はないでしょうか。
0071nobodyさん2013/02/15(金) 16:26:51.64ID:???
>>70
booleanのnone_flagを新設
文字列がNoneだったらCreateやUpdate時にTrueを入れる
デフォルトはFalse

None以外のエンティティを取得したい時は
none_flag=Falseと日付orderを使う
0072702013/02/15(金) 17:45:50.29ID:???
>>71
うおーありがとうございます!
0073nobodyさん2013/02/15(金) 18:39:04.54ID:???
おれも質問

ずっとPHPでCakePHP使ってきたんだけど
PythonというかGAEではコマンドでひながた作ったり
モデルデータを自動で作ってくれるフレームワークってないの?
0074nobodyさん2013/02/15(金) 18:54:29.69ID:???
公式からダウンロードできるGAEランチャーの左下の+を押せばひな形出来る(GUI)
デプロイもワンクリック
ぶっちゃけCUIでダラダラコマンド入力するよりこっちのほうが楽でしょ

モデルデータは知らん
0075nobodyさん2013/02/17(日) 21:39:56.97ID:???
web2py使ってたけどやめたわ。
全然標準でいける。
0076nobodyさん2013/02/17(日) 21:42:19.18ID:???
スレッドセーフで悩んでたやつは何でなやんでたんだ。
前スレみれないからわからんわ。
0077nobodyさん2013/02/18(月) 01:17:59.85ID:???
>>75
標準ってwebappのほう?
生産性的にはどうなんかね
0078nobodyさん2013/02/18(月) 02:00:37.11ID:???
>>77
webappだな。
生産性はビューまわりは悪いな、やっぱ。
作るものによっては、ビューエンジンだけ、Djangoのとか使ったほうがいいかもな。
他は変なストレスがなくてよい。
データストアとかは、変にラップされたもの使うより、自分で実装したほうが精神衛生上よいし、
認証周りも、フレームワークで用意してくれてるごっついもの使うより、自分で1から実装したほうが、
フレームワーク独特の仕様でイライラするようなことはないな。
まぁGAEにかぎったことじゃないがな。webappはシンプルでいいよ。
0079nobodyさん2013/02/18(月) 10:28:08.12ID:???
>>76
どうやったらスレッドセーフなものが書けるの?
みたいな話だったと思う
俺の理解はこのスレの >>32 と変わんないから
もし知ってるならなんかヒントだけでもほしいよ

>>78
俺も同意
素直だけどGAE前提だから扱いやすいね
webappは2の方がいろいろ楽になってるから
英語しかないけど2使ったほうがいいな
0080nobodyさん2013/02/18(月) 16:59:48.99ID:5q8/651I
あああああ
0081nobodyさん2013/02/20(水) 23:01:15.15ID:???
k = db.Key('Entity', 'test')
db.delete(k)

みたいにフェッチしないで削除したほうが、よけいなREAD発生せずにすむのかね?
0082nobodyさん2013/02/20(水) 23:17:04.25ID:???
>>81
正解
0083nobodyさん2013/02/20(水) 23:35:34.60ID:???
>>82
ありがと
0084nobodyさん2013/02/22(金) 22:23:25.92ID:???
これいいね
http://tr.im/zw5y
ソースはこれ
0085nobodyさん2013/02/27(水) 13:03:32.96ID:???
date型って、○月○日とか3日以内とかの条件で使えるのか?
年月日時間、別々で持った方がいいかなぁ。まぁじっくり設計して考えろって話だが。
0086nobodyさん2013/02/27(水) 14:10:08.76ID:???
試してみて結果報告を頼む
できない場合
dateを数値に変換したものを別に持たせとけば良さそう
0087nobodyさん2013/02/27(水) 15:28:26.46ID:???
>>85
両方できる
ただ比較演算子を温存するために定点からの日数や年数を持たせておくといいと思う
0088nobodyさん2013/02/27(水) 18:46:55.44ID:???
>>86
あぁ別で持つって手もあるのか。
なんか気づいたら報告する。
>>87
�d
ほぅ。例えば日数だけで検索したい場合は、stringとかで持ってたほうが早いってことかな。
0089(;D)笑男 ◆LeBIz0ZWfs 2013/03/01(金) 10:21:37.15ID:???
>>598
これを安全というか危険というか

今の放射能の議論は扱ってる数字は同じなので解釈問題になってしまってる
0090(;D)笑男 ◆LeBIz0ZWfs 2013/03/01(金) 10:22:17.55ID:???
誤爆しました すみません
0091nobodyさん2013/03/01(金) 11:12:42.95ID:???
あのスーパーハカーも使っているGAE
0092nobodyさん2013/03/01(金) 18:20:33.13ID:???
dat2 = address2. all()
dat2.filter( "shikutyosonmei =",u '名古屋市千種区' )
dat2.order( "todofukenmei ")
dat2.order( "shikutyosonmei ")
dat2.order( "ooazatyotyome ")

ローカルではエラーが出ないがサーバーではエラー
dat2.get("ooazatyotyome","")
    dat2.get("ooazatyotyome")

正解
  dat2.ooazatyotyome

まえからそうだっけ?
0093nobodyさん2013/03/01(金) 18:21:45.76ID:???
あ、ちがう

ローカルではエラーが出ないがサーバーではエラー
dat2[0].get("ooazatyotyome","")
dat2[0].get("ooazatyotyome")

正解
dat2[0].ooazatyotyome
0094nobodyさん2013/03/02(土) 10:20:30.13ID:???
あれ 何が起こってるんだろ

今度はローカルで
AttributeError: 'dict' object has no attribute 'ooazatyotyome'
0095nobodyさん2013/03/02(土) 10:49:04.61ID:???
あ、わかった
データが取れない所でDict入れてた
スレ汚しすみません
0096nobodyさん2013/03/02(土) 20:05:26.87ID:???
ReferenceProperty持ってるエンティティ取得した時点で、
親エンティティの検索も発生しちゃうのか?
もしそうだとしたら、とりあえずキーだけ欲しくて条件によっては親エンティティも
取得したい場合は、ReferenceProperty使わないほうがいいのかね。
0097962013/03/02(土) 23:00:41.72ID:???
Appstatsなるものがあるのか。自分で調べるわ。
0098nobodyさん2013/03/03(日) 17:47:19.86ID:JQuTw+Pi
w
0099nobodyさん2013/03/13(水) 10:08:08.66ID:???
特定のGoogleアカウントにだけアクセスを許可するページってどうやって作るんですか?
以下のコードでそれっぽいことできたんですが、もっと良い方法ないですかね。

if users.user_id() == 'アクセスを許可したいGoogleアカウントのID':
 <ページを表示>
else:
 <403ページヘリダイレクト>
0100nobodyさん2013/03/13(水) 10:26:27.95ID:???
ありますよ
0101nobodyさん2013/03/15(金) 07:54:21.04ID:4gK3sk/W
ui
0102nobodyさん2013/03/15(金) 10:53:33.91ID:C48HVSYd
>>99
どういう意図の制限か知らんが
それが一般にオープンなものじゃなくて
身内だけで使うものなら
そのアプリケーション単位のアカウント設定使いなよ
0103nobodyさん2013/03/15(金) 11:03:52.65ID:???
それだと administrator になりませんか?
0104nobodyさん2013/03/15(金) 12:28:40.86ID:C48HVSYd
Viewer Roleも渡せない相手なら
そりゃある程度手間かけないと

自分でやってる形が一番手軽だけどメンテしにくい
Accountモデル作ってキーをGoogleAccountのIDにして
key.get()で判定が一番早いかな
Datastore ViewerでCRUDできるし

ndbだとkeyで取ったらキャッシュするんで
メンテ時はキャッシュのフラッシュ忘れずに
0105nobodyさん2013/03/15(金) 18:02:46.14ID:???
ありが�d
あんたA人屋根
0106nobodyさん2013/03/15(金) 20:50:24.23ID:???
前回散々叩かれたのに
また村上が懲りずにデマばらまいてる
そのうちこのスレにもやってくるぞ
0107nobodyさん2013/03/15(金) 20:52:10.36ID:???
>>106
村上って誰?
0108nobodyさん2013/03/18(月) 00:00:31.01ID:oBAWUAZZ
GAEアプリから2chかbbsへ投稿したいですがhttp://www.dropbox.com/s/v5tkm2x2fj2ijfa/Photo%2013-03-17%2023%2039%2036.png写真の通り逆引、グーグルIPで投稿できません。解決方法があれば教えていただければ幸いです。
0109nobodyさん2013/03/18(月) 02:14:17.40ID:???
クライアントのJavaScript上から投稿すれば?
0110nobodyさん2013/03/20(水) 22:14:03.14ID:???
クラウド通すと、犯罪予告とかに使われるぞ。
0111nobodyさん2013/03/22(金) 18:54:05.29ID:???
te
0112nobodyさん2013/03/25(月) 19:50:19.12ID:???
おもろいけどすぐ飽きる
http://portal.nifty.com/2013/03/22/a/3.htm
0113nobodyさん2013/04/05(金) 14:36:44.83ID:exGUhXLD
モデルエンティティにある名前のプロパティを操作すると
時々プロパティがなかったりしてエラーがでるんだけど
どうやってチェックするかど忘れした
0114nobodyさん2013/04/08(月) 01:52:09.51ID:qxm57EL8
全然伸びてないなぁ。
0115nobodyさん2013/04/10(水) 08:56:46.33ID:ZdxjB7Qn
日本で成功事例出てこないとむずかしいな
いまんとこゲームのバックエンドばっかりだし
0116nobodyさん2013/04/10(水) 15:37:42.92ID:ZdxjB7Qn
2.1ドルかからなくなってるな
■ このスレッドは過去ログ倉庫に格納されています