1 名前:nobodyさん mailto:sage [2011/04/12(火) 17:54:29.62 ID:???] Google App Engine code.google.com/appengine/ ■過去スレ Google App Engine pc11.2ch.net/test/read.cgi/php/1207754942/ Google App Engine 2アプ目 pc11.2ch.net/test/read.cgi/php/1243654802/ Google AppEngine 3アプ目 hibari.2ch.net/test/read.cgi/php/1267057923/ ■リンク集 はてなブックマーク b.hatena.ne.jp/t/gae b.hatena.ne.jp/t/Google%20App%20Engine Delicious delicious.com/popular/gae delicious.com/popular/googleappengine ■参考サイト App Engine ギャラリー appgallery.appspot.com/ ドキュメント code.google.com/appengine/docs/python/overview.html
110 名前:nobodyさん mailto:sage [2011/05/03(火) 23:02:37.60 ID:???] >103 >104 文字コードの宣言の位置が変な所にあった。 すみません。
111 名前:nobodyさん mailto:sage [2011/05/04(水) 00:33:44.50 ID:???] >>110 あやまるのはいいから、それをどうやってみつけたかを報告するのだ
112 名前:nobodyさん mailto:sage [2011/05/04(水) 01:19:05.93 ID:???] >111 #!-*- coding:utf-8 -*- を一番上にちゃんと持って来てなかったのが原因でした。
113 名前:nobodyさん mailto:sage [2011/05/04(水) 01:30:24.09 ID:???] >>112 いやだからどうやってみつけたかをきいているんだがつうじてないようだ
114 名前:nobodyさん mailto:sage [2011/05/04(水) 02:04:13.16 ID:???] 他のコード見比べたりとかじゃだめ?
115 名前:nobodyさん mailto:sage [2011/05/04(水) 09:40:51.27 ID:???] Prerelease SDK 1.5.0 available for download - Google App Engine | Google Groups groups.google.com/group/google-appengine/msg/ac6accdf8e5096f4
116 名前:nobodyさん mailto:sage [2011/05/04(水) 10:16:35.76 ID:???] >>115 そこにでてくる Federated Users ってなに? あと Metadata queries も何のことかわからない。教えて。
117 名前:nobodyさん mailto:sage [2011/05/04(水) 10:31:45.70 ID:???] eclipseが重いからテキストエディタだけで作業したいんだけど プロジェクト作成する時とアップロードする時だけeclipse起動するのが面倒くさい 全てテキストエディタで完結できればな
118 名前:nobodyさん mailto:sage [2011/05/04(水) 11:01:58.38 ID:???] >>117 アップロードはappcfg.pyでやれよ
119 名前:nobodyさん mailto:sage [2011/05/04(水) 11:30:51.38 ID:???] なんでpythonなのにeclipse使ってるの?
120 名前:nobodyさん mailto:sage [2011/05/04(水) 13:05:25.85 ID:???] だめ?
121 名前:nobodyさん mailto:sage [2011/05/04(水) 13:09:53.49 ID:???] 逝ってよし
122 名前:nobodyさん mailto:sage [2011/05/04(水) 13:59:53.86 ID:???] ダメじゃないけど、 >>117 が今までeclipseを使ってた理由がわからないな
123 名前:nobodyさん mailto:sage [2011/05/04(水) 14:42:00.45 ID:???] メジャーなのはCotEditorとか?
124 名前:nobodyさん mailto:sage [2011/05/05(木) 14:08:23.22 ID:???] GQLのクエリの長さってどれくらいが限度か情報ありませんか? 親の検索条件に子条件を無限数設定できるようにしたのですが、どこらへんで止まるでしょうか? ご存じの方教えてください
125 名前:nobodyさん mailto:sage [2011/05/05(木) 15:15:31.56 ID:???] django nonrel使ってる人居ます?
126 名前:nobodyさん mailto:sage [2011/05/05(木) 16:24:51.30 ID:???] >>124 クエリの長さっていうのが、単にGQL文字列の長さのことをいっているのであれば、制限はないと思う。 ただし、 ttp://code.google.com/intl/ja/appengine/docs/python/datastore/queriesandindexes.html によると > != および IN 演算子を含む単一のクエリのサブクエリは 30 個に制限されます。 とあるから、指定可能な検索条件は最大で30個 (!=やINを含むとそれ以下)なんじゃなかろうか。
127 名前:nobodyさん mailto:sage [2011/05/05(木) 16:27:07.06 ID:???] class Foo(db.Model): x = db.StringProperty() y = db.StringProperty() とあったとき、 Foo.all().filter('x =', 10) のような指定はできますが Foo.all().filter('x = y') のような指定はできないでしょうか。
128 名前:nobodyさん mailto:sage [2011/05/05(木) 16:31:58.83 ID:???] >>126 ありがとうございます。 その制限は把握していたのですが、ANDをいくつくっつけられるかっていのは制限がなく 検索時間とかで制限受けるのでしょうかね? 検索条件が可変長なので作ったら結果がわかるのでまたお知らせします。
129 名前:nobodyさん mailto:sage [2011/05/05(木) 16:45:40.54 ID:???] >>127 自前でフラグを用意するしか方法はないんじゃない? 既存のデータにフラグを追加するのはMapper API使えば簡単にできるよ
130 名前:nobodyさん mailto:sage [2011/05/05(木) 20:55:09.96 ID:???] モデルオブジェクトのsetterでフックをしかけることはできますか。 class Foo(db.Model): val = db.StringProperty(validator=func) のように、バリデーション用関数を指定できますが、これはあくまで値が 正しいかどうかを検証するためのものでしかありません。 そうではなく、たとえば obj.val = "FooBar" print obj.val #=> 'foobar' のように、値を自動的に変更するようなことがしたいです。
131 名前:nobodyさん mailto:sage [2011/05/05(木) 22:01:45.16 ID:???] propertyでやれば? www.python.jp/doc/release/library/functions.html#property
132 名前:nobodyさん mailto:sage [2011/05/06(金) 11:07:06.12 ID:???] gae+twitterで面白いサイトって作れるの?
133 名前:nobodyさん mailto:sage [2011/05/07(土) 01:17:38.91 ID:???] >>132 TwitBOTをRSS的使い方するくらいしか思いつかんなぁ ユーザ生成コンテンツを利用する前提ならもっとあるだろうな
134 名前:nobodyさん mailto:sage [2011/05/07(土) 01:27:14.80 ID:???] botのcronのためだけにgaeを使う方法を解説してるページが多い。
135 名前:nobodyさん mailto:sage [2011/05/07(土) 10:34:47.57 ID:???] >>131 モデルオブジェクトではすでにプロパティが使われているので、それに重ねてプロパティを設定する方法はありますか。 自分で調べた限りではありませんでした。 class Foo(db.Model): val = db.StringProperty() # ← これがすでにプロパティになっている
136 名前:nobodyさん mailto:sage [2011/05/07(土) 12:09:39.13 ID:???] ドキュメントルートの外にファイルを置くというのは WEB-INF以外の場所にファイルを置くという認識で大丈夫ですか?
137 名前:nobodyさん mailto:sage [2011/05/07(土) 12:32:11.10 ID:???] こっちはPythonスレですよ
138 名前:nobodyさん mailto:sage [2011/05/07(土) 21:35:02.90 ID:???] pythonで作った場合はWE-INFってないの?
139 名前:nobodyさん mailto:sage [2011/05/08(日) 00:34:33.50 ID:???] >>132 twitlogがGAE使ってたはず
140 名前:nobodyさん mailto:sage [2011/05/10(火) 00:49:00.23 ID:???] ゴミみたいなBOTはノイズ
141 名前:nobodyさん mailto:sage [2011/05/10(火) 15:43:44.63 ID:???] GQLの結果セットのマージの仕方を教えてください gqlobjA = modelA.gql("WHERE a = 'A'") gqlobjB = modelA.gql("WHERE b = 'B'") こうやって取得したGQLオブジェクトをマージしたいです OR連結と同じ結果が取得したいので重複値を取り除きながら結合するにはどうしたらいいでしょうか?
142 名前:nobodyさん mailto:sage [2011/05/10(火) 22:14:35.10 ID:???] >>141 よくわかんないけどPythonのset()を使って和集合をとるというのはどうだろうか。 set(list1) | set(list2) でlist1とlist2のどちらかに含まれる要素をもつ、新しいsetができる。
143 名前:nobodyさん mailto:sage [2011/05/10(火) 22:21:11.58 ID:???] 同じエンティティが同じオブジェクトとは限らないだろうから key()で比較するしかなさそう
144 名前:nobodyさん mailto:sage [2011/05/11(水) 00:37:08.23 ID:???] >>142 なるほど、これでいけるかも知れないですね・・・コードは簡略になります。 >>143 for b in dataset:a for t in datasetb: if t.key() == b.key(): break else: datasetb.append(b) こういう感じですかね? ORがないのでこういう処理は結構あるとおもうのですが簡単に見つかりませんね。 ありがとうございました。 両方テストしてみます。
145 名前:nobodyさん mailto:sage [2011/05/11(水) 05:49:24.45 ID:???] >>144 のコードは効率が悪いからsetを使うべき for t in datasetb: if t.key() == b.key(): break というのはdatasetbの長さぶんだけ繰り返しを行うので時間がかかるが setを使えばこの部分が一瞬で終わる。
146 名前:nobodyさん mailto:sage [2011/05/11(水) 09:24:14.06 ID:???] >>145 setでやってみます
147 名前:nobodyさん mailto:sage [2011/05/11(水) 21:12:58.30 ID:???] support Go language!
148 名前:nobodyさん mailto:sage [2011/05/13(金) 06:27:45.92 ID:???] 751 名前:nobodyさん[sage] 投稿日:2011/05/12(木) 02:45:16.19 ID:??? googleappengine.blogspot.com/2011/05/year-ahead-for-google-app-engine.html www.google.com/enterprise/appengine/appengine_pricing.html 課金モデルが変更されるのか CPU時間からインスタンス時間へ変更 無料枠(per day)は下記の通りに変更される (旧)6.50 CPU時間 (新)24 インスタンス時間 Always On($0.30/day)から Reserved Frontend Instances($0.05 / hour)プランに変更 (旧)月当たり9ドル($0.30/day * 30 day = $9) (新)月当たり36ドル($0.05/ hour * 24 hour * 30 day = $36) ? ※Always Onは3インスタンス常時起動で、新プランが1インスタンス常時起動の価格だとすれば、Always On相当にするにはこの3倍、約108ドル必要?) よく内容を精査していないから分からないが、改悪っぽいのかな? 公式ブログに寄せられたコメントは「残念だ、がっかりした、嫌だ、反対だ」だらけ(笑 752 名前:nobodyさん[sage] 投稿日:2011/05/12(木) 05:47:12.83 ID:??? 外人さんの悲痛な叫び I have a dev app that uses currently about 40cpu hours a day, has ~16 active instances on average and serves ~7.5 requests/second. Right now I am paying ~120$ a month. (俺は現在、1日当たりおよそ40CPU時間、平均16のアクティブなインスタンス、7.5リクエスト/秒 くらいのアプリケーションを運用していて、ひと月あたり120ドル払ってる。) With the new pricing model I would have to pay for the instances alone ~921.6$ a month. For api usage about 200$ and the base fee of 9$ thats summerized 1130.6$ or in other words a price change of 942%. Thats immoral and illegal for a good reason in most european countries. (新しい課金モデルで計算しなおすと、インスタンスだけで月921.6ドルも払わなきゃいけなくなる。 API使用料は約200ドルで、基本使用料が9ドルだから、総額1130.6ドル、別の言葉で言い表すと942%の増額だ。 これは多くのヨーロッパの国々で、不道徳かつ違法となる十分な理由になるぜ。)
149 名前:nobodyさん mailto:sage [2011/05/14(土) 14:31:21.23 ID:???] from google.appengine.ext import db obj = db.get(db.key('aaa')) とすると AttributeError: 'module' object has no attribute 'key' となります。 import のやり方が悪いのでしょうか? obj = db.get('aaa') でも動くのですが公式に乗ってるやり方でエラーがでるので気持ち悪いです。
150 名前:nobodyさん mailto:sage [2011/05/14(土) 14:32:50.03 ID:???] 値上が違法? Oracleとか末代まで恨まれるだろうな
151 名前:nobodyさん mailto:sage [2011/05/14(土) 14:41:16.33 ID:???] >>149 db.keyじゃなくてdb.Key
152 名前:nobodyさん mailto:sage [2011/05/14(土) 14:52:54.27 ID:???] ああああああ orz ありがとうございました
153 名前:nobodyさん mailto:sage [2011/05/16(月) 21:56:03.50 ID:???] つまらない一発ネタのWEBサービスいくつか作って遊んでたけど、結局googleの手の上で あそばされていただけと思ったら急にむなしくなった。
154 名前:nobodyさん mailto:sage [2011/05/17(火) 07:52:40.52 ID:???] ここまでPythonやる気にさせといてハシゴ外された…
155 名前:nobodyさん mailto:sage [2011/05/17(火) 11:30:54.99 ID:???] <input type="checkbox" name="prefselect" value="東京" selected/> <input type="checkbox" name="prefselect" value="埼玉"/> <input type="checkbox" name="prefselect" value="千葉" selected/> self.request.getを使って東京都千葉を取得する方法はありますか? request.POST.getlist("prefselect") これだと思ってたらリファレンスにありません
156 名前:nobodyさん mailto:sage [2011/05/17(火) 11:49:48.75 ID:???] 試してないけどrequest.POST.getall("prefselect")かな? pythonpaste.org/webob/reference.html#query-post-variables
157 名前:nobodyさん mailto:sage [2011/05/17(火) 12:35:17.64 ID:???] >>156 あれ・・・WebObさんの中にいらっしゃいましたか・・・ grepかけただけで諦めちゃいけませんね ありがとうございました
158 名前:nobodyさん mailto:sage [2011/05/17(火) 21:29:10.55 ID:???] >>154 Goやろうぜ!
159 名前:nobodyさん [2011/05/17(火) 23:26:04.26 ID:7/0cbQ2l] PythonとJavaとどっちでやるのがいいん? PythonでもEclipseでローカルサーバのテストからデプロイまで支援があるの?
160 名前:nobodyさん mailto:sage [2011/05/17(火) 23:30:39.94 ID:???] 残念ながらPythonは…
161 名前:nobodyさん mailto:sage [2011/05/17(火) 23:44:57.93 ID:???] 値上げかあ。 1インスタンスだけなら24時間上げっぱなしでも無料ということだよね。 そんなにアクセスのあるサイトじゃなければ、1インスタンスでもけっこういけるんじゃないかと思うけど、どう? インスタンス数って自分で制限できるのかな。
162 名前:nobodyさん mailto:sage [2011/05/18(水) 01:23:41.89 ID:???] Python Java Goそれぞれのメリットデメリットを教えてください
163 名前:nobodyさん mailto:sage [2011/05/18(水) 08:22:02.53 ID:???] 課金だと基本料金で月9ドルかかるのか 激安鯖なら年間料金だぞ
164 名前:nobodyさん mailto:sage [2011/05/19(木) 07:18:02.59 ID:???] twitter.com/higayasuo/statuses/70732476959559680 higayasuo (higayasuo) Python 2.7 on appengineでconcurrent requestsをサポートするらしい。 その作業が終わるまではpythonのインスタンスあたりのコストはJavaの半分になるようだ #gaeja
165 名前:nobodyさん mailto:sage [2011/05/19(木) 09:54:52.72 ID:???] Javaだとマルチスレッド化でインスタンス数をかなり減らせるらしいね pythonはゴミ決定
166 名前:nobodyさん mailto:sage [2011/05/19(木) 10:12:01.82 ID:???] ん?気づかないうちにマルチスレッド使えるようになったん?
167 名前:nobodyさん mailto:sage [2011/05/19(木) 23:51:07.62 ID:???] どんなものかと思って初めてアプリ上げてみた。意外に簡単にできるんだな。 でもアイデアがない。
168 名前:nobodyさん mailto:sage [2011/05/21(土) 02:50:17.57 ID:???] なんか面白いネタない?
169 名前:nobodyさん mailto:sage [2011/05/21(土) 03:04:32.71 ID:???] ない。
170 名前:nobodyさん mailto:sage [2011/05/21(土) 10:31:33.90 ID:???] GQLから得たクエリオブジェクトから目的の列だけ選んだ辞書配列を作りたいです。 tbl = [fieldA,fieldB for fieldA,fieldB in modelA]
171 名前:nobodyさん mailto:sage [2011/05/21(土) 10:38:21.26 ID:???] tbl = [prop for prop in modelA if prop.fieldA == 'hoge']
172 名前:nobodyさん mailto:sage [2011/05/23(月) 07:54:57.53 ID:???] 誰か新しい料金体系について日本語でまとめてください
173 名前:nobodyさん mailto:sage [2011/05/23(月) 12:37:14.51 ID:???] 「タダより高い物はない」
174 名前:nobodyさん mailto:sage [2011/05/24(火) 11:17:50.30 ID:???] appcfg.py update の Deploying new version. Checking if new version is ready to serve. Will check again in 1 seconds. Checking if new version is ready to serve. Will check again in 2 seconds. Checking if new version is ready to serve. これって、なんで何度もチェックしてるの?
175 名前:nobodyさん mailto:sage [2011/05/24(火) 17:32:12.20 ID:???] >>172 今までの約10倍の値上げ 有料プランは、月々9ドル必ずかかる 無料プランは使い物にならない 結論 GAE終了
176 名前:nobodyさん mailto:sage [2011/05/24(火) 22:05:44.86 ID:???] 確かにいまさらで考えてみると、今までの条件は美味しすぎたな 一応うたい文句的には完全に無料で月間約500万ページ ビューに対応できるってんだろ 結局得したのはアーリーアダプターである程度稼げた奴か
177 名前:nobodyさん mailto:sage [2011/05/24(火) 23:02:00.02 ID:???] 無料で提供される玩具としては最高だったけどな 他の会社が追随しないところを見ると、やっぱり利益度外視だったのだろう
178 名前:nobodyさん mailto:sage [2011/05/25(水) 05:50:25.72 ID:???] で、この料金体系とAmazonを比べてみるとどうなの?
179 名前:nobodyさん mailto:sage [2011/05/25(水) 06:16:36.31 ID:???] 自分で比べろよ
180 名前:nobodyさん mailto:sage [2011/05/25(水) 13:45:53.51 ID:???] どうなのって人に聞いてるやつに対して自分で比べろってのも筋違いなレスだよな まぁ俺も答える気はないが
181 名前:nobodyさん mailto:sage [2011/05/25(水) 17:11:18.72 ID:???] Yahoo知恵袋ではよくある光景
182 名前:nobodyさん mailto:sage [2011/05/28(土) 11:50:17.21 ID:???] 9ドルのせいで二の足を踏む また値上げされるんじゃないかと考えて三の足を踏む
183 名前:nobodyさん mailto:sage [2011/05/28(土) 18:06:23.08 ID:???] >>182 俺の中でGAEは死んだ。あぁー
184 名前:nobodyさん mailto:sage [2011/05/30(月) 05:55:04.35 ID:???] 久々のOver quotaきたああああ
185 名前:nobodyさん mailto:sage [2011/05/30(月) 21:23:22.07 ID:???] サンプル動かすともうやることがなくなっちゃう。
186 名前:nobodyさん mailto:sage [2011/05/31(火) 01:17:15.73 ID:???] 無料の制限がきつくなりすぎだろ 途中まで作ってたけど、有料だと月9ドル払わされるし、別のところに行ったほうが良さそうだな
187 名前:nobodyさん mailto:sage [2011/05/31(火) 19:59:01.24 ID:???] サンプル動かしただけでOverQuotaぁぁぁぁーーー
188 名前:nobodyさん mailto:sage [2011/06/01(水) 01:16:09.55 ID:???] GAEはオワコン
189 名前:nobodyさん mailto:sage [2011/06/01(水) 01:26:21.99 ID:???] >>186 あてはあるのか?
190 名前:nobodyさん mailto:sage [2011/06/01(水) 02:06:11.04 ID:???] cloud9が無料化
191 名前:nobodyさん mailto:sage [2011/06/01(水) 14:03:16.22 ID:???] で結局AmazonEC2の代わりになるの? 1秒に何回のリクエストに耐えられるの?
192 名前:nobodyさん mailto:sage [2011/06/01(水) 15:14:07.80 ID:???] >>191 >>188
193 名前:nobodyさん mailto:sage [2011/06/01(水) 21:42:22.59 ID:???] もうちょっと可能性について語ってください
194 名前:nobodyさん mailto:sage [2011/06/01(水) 22:33:24.03 ID:???] >>187 どういうサンプル?
195 名前:nobodyさん mailto:sage [2011/06/01(水) 22:41:49.70 ID:???] >>194 メールを101通送信するだけでOverQuotaぁぁぁぁーーー
196 名前:nobodyさん mailto:sage [2011/06/02(木) 17:39:25.81 ID:???] code.google.com/intl/ja/appengine/docs/quotas.html 一日2000人 までは可能 ただし 8人/分 を守らないとオワコン
197 名前:nobodyさん mailto:sage [2011/06/02(木) 17:42:34.97 ID:???] 1通あたり6kBあると100人で死ねるな
198 名前:nobodyさん mailto:sage [2011/06/02(木) 19:00:07.74 ID:???] すみません GAEのDjangoテンプレート言語で 下記サンプルのようにstory_listの反復をfor文で記述する場合 story.categoryの内容が変化するたびにdivで区切りたいのですが そのような書き方はありますか? categoryはあらかじめソートしてあります {% for story in story_list %} <h2> <a href="{{ story.get_absolute_url }}"> {{ story.headline|upper }} </a> </h2> <p>{{ story.tease|truncatewords:"100" }}</p> {% endfor %}
199 名前:nobodyさん mailto:sage [2011/06/02(木) 19:53:18.16 ID:???] あらかじめ [[ "カテゴリ1", [story1, story2 ...]], ["カテゴリ2", [story3, story4... ], ...] みたいなデータを作っておく
200 名前:nobodyさん mailto:sage [2011/06/02(木) 23:22:00.71 ID:???] 無料アカウント? でやってて有料になるときってなんか警告とかあるんだよね。 クレカの登録とかしてないし。
201 名前:nobodyさん mailto:sage [2011/06/02(木) 23:43:44.67 ID:???] >>200 勝手に有料にはならない。無料枠を使い切ったら止まるだけ Google App EngineでCPU Timeを使い切った - Shin x blog ttp://www.1x1.jp/blog/2010/01/google_app_engine_over_quota.html
202 名前:nobodyさん mailto:sage [2011/06/03(金) 08:55:30.23 ID:???] ああ やっぱり・・・ 了解しました
203 名前:nobodyさん mailto:sage [2011/06/07(火) 15:24:25.04 ID:???] ソースコードをダウンロードする機能って公式で対応してなかったっけ?
204 名前:nobodyさん mailto:sage [2011/06/07(火) 15:32:23.35 ID:???] >>203 code.google.com/appengine/docs/python/tools/uploadinganapp.html#Downloading_Source_Code
205 名前:nobodyさん mailto:sage [2011/06/07(火) 16:13:43.69 ID:???] >>204 さんくす。英語のリファレンスみたいとダメなのか。
206 名前:nobodyさん mailto:sage [2011/06/08(水) 03:53:01.85 ID:???] 結局一時話題になっただけど、だんだん尻すぼみになってるの?>App Engine
207 名前:nobodyさん mailto:sage [2011/06/08(水) 18:21:55.20 ID:???] >>206 googleの課金代行は期待したい それがあれば有料でGAE使っても良いと思える
208 名前:nobodyさん mailto:sage [2011/06/09(木) 19:07:22.84 ID:???] GoogleもPaypalみたいな少額決済サービスはじめてくれないかな・・・
209 名前:nobodyさん mailto:sage [2011/06/09(木) 19:13:39.54 ID:???] gaeで作ったのを他に移植したいんだけど、考えるだけで大変…
210 名前:nobodyさん mailto:sage [2011/06/10(金) 03:11:06.43 ID:???] >>209 誰かラッパー書いてないのかYO?