人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

PythonによるGoogle App EngineでのDB(データベース)をUPDATE(更新)する方法をなるべく具体的に教えて下さい。
putでしょうか?GQLでしょうか?

●質問者: ホチョチョピラギ
●カテゴリ:コンピュータ ウェブ制作
○ 状態 :終了
└ 回答数 : 5/5件

▽最新の回答へ

1 ● きゃづみぃ
●1ポイント

http://code.google.com/intl/ja/appengine/docs/python/gettingstarted/usingdatastore.html


PUTですね。


ホチョチョピラギさんのコメント
早速の回答ありがとうございます。 そのページは既に見ております。 具体的なデータ取得と更新の例を記していただけると助かります。

きゃづみぃさんのコメント
質問では 更新の仕方を 聞いていたので PUTというように回答しました。

2 ● TransFreeBSD
●167ポイント

http://code.google.com/intl/ja/appengine/docs/python/gettingstarted/usingdatastore.html
これにおける具体的なデータ取得部分はMainPageクラスのgetメソッドで、GQLを発行して結果greetingsを受取り、次のforループ部で一つづつgreetingのプロパティを使っています。

 greetings = db.GqlQuery("SELECT * FROM Greeting ORDER BY date DESC LIMIT 10")

 for greeting in greetings:
 if greeting.author:
 self.response.out.write('<b>%s</b> wrote:' % greeting.author.nickname())
 else:
 self.response.out.write('An anonymous person wrote:')
 self.response.out.write('<blockquote>%s</blockquote>' %
 cgi.escape(greeting.content))

更新の部分はGuestbookクラスのpostメソッドでgreetingを作成し、プロパティを設定してput()で更新をしています。

 greeting = Greeting()

 if users.get_current_user():
 greeting.author = users.get_current_user()

 greeting.content = self.request.get('content')
 greeting.put()

という部分を中心とした完動する具体例を元にデータストアを詳細に解説しているページだと思うのですが、どこか分からない部分がありますか?


3 ● きゃづみぃ
●166ポイント

http://itpro.nikkeibp.co.jp/article/COLUMN/20080529/305017/
http://appengine.keicode.com/gae/datastore-gql-python.php

データ取得の例
diary_today = db.GqlQuery("SELECT * FROM Diary where diary.author = :1",
users.get_current_user())

保存の例は
http://appengine.keicode.com/gae/datastore-gql-python-save.php
を参照


4 ● morinatsu
●166ポイント

GQLは問い合わせに使えるだけで、更新はできません。
1.GQLなりクエリなりで、データストアの内容をオブジェクトに読み込む。
2.オブジェクトを書き換える。
3.putでオブジェクトをデータストアに突っ込んで更新。

UPDATEではないですが、INSERTイメージのアクセスをやるアプリを昔作りました。
(諸々の事情で今は動かしてませんが)
http://github.com/morinatsu/nico-rank


morinatsuさんのコメント
よく見たらUPDATEもやってますね。INSERTはRankingオブジェクト、UPDATEはRelevantDateオブジェクトに対して行っています。

5 ● kodairabase
●0ポイント

Google APP Engine Python入門

http://d.hatena.ne.jp/kagigotonet/20100209/1265726225

関連質問

●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ