web-dev-qa-db-ja.com

web2pyを使用している人はいますか?

web2py を使用している人はいますか?

具体的には:

  • 生産中?
  • どのデータベースで?
  • Google Application Engineで?

    • 「そこに」とは、スタックオーバーフローを意味します。
63

google group で同じ質問をすることを歓迎します。そこには500人以上のユーザーがいます。そのうちのいくつかは、クライアント向けのプロジェクトを構築する開発会社です。

私の印象では、それらのほとんどがpostgresqlを使用し(これが私がすることです)、他の一部はGoogle App Engineを使用しています。実際、web2pyは一度コードを書くことができる唯一のフレームワークであり、同じコードがGAE、SQLite、MySQL、PostgreSQL、Oracle、MSSQLおよびFireBird上で実行されます(GAEによって課される制限があります)。

GAEのソースコードを含むReddish(reddit clone)アプライアンスを見つけることができます here

ここ プロダクションアプリへのリンクがあります。一部はGAEで実行されています。

@アーミン:

DjangoまたはPylons。これらは優れたフレームワークです。web2pyを開発する前にそれらを使用しました。web2pyでできることとできないことはいくつかあります。たとえば:

  • web2pyはPostgresqlとの分散トランザクションを行うため、Arminはこの機能を要求しました。
  • Django ORMはネイティブに移行を行いません( South を参照)、web2pyは行います。
  • Django ORMは部分的な合計(count(field))とグループ化を許可しませんが、web2pyは許可します。
  • web2pyは一度に複数のデータベースに接続できますが、 ジャンゴと それを行うにはパイロンをハッキングする必要があり、
  • web2pyには、プロジェクトレベルではなく、アプリのような設定ファイルがあります。
  • webp2yは、管理者のすべてのトレースバックサーバー側を記録します。Djangoで、Pylonsは記録しません。
  • 多くの場合、web2pyプログラムは変更されずにGAEで実行されます。
  • web2pyにはxmlrpc Webサービスが組み込まれています。
  • web2pyにはjQueryが付属しています。

Web2pyには、より一貫性のあるAPI(より一貫したAPIを使用)と高速化(テンプレートの処理とSQLの生成など)を行う多くの機能があります。 web2pyは非常にコンパクト(すべてのモジュールが265Kバイトに収まる)であるため、競合するプロジェクトよりも保守がはるかに簡単です。

学ぶ必要があるのはPythonと81個の新しい関数/クラス(そのうち50個は対応するHTMLタグと同じ名前と属性を持ち、BRDIVSPANなど、および19はバリデーター、IS_IN_SETIS_INT_IN_RANGEなど)。

とにかく、最も重要な問題はweb2pyがDjango、Pylons、PHPおよびRailsよりも簡単であることです。

また、web2pyはGoogle CodeとLaunchpadの両方でホストされており、オープンチケットはありません。過去の問題はすべて24時間以内に解決されました。

また、Googleメーリングリストで、すべてのスレッド(今日の10056件のメッセージ)が24時間以内に私または他の開発者からの回答になったことを確認できます。

Amazonのweb2pyで本を見つけることができます。

アーミン、あなたがジンジャの開発者であることは知っている。私はジンジャが好きですが、異なるデザイン哲学を持っています。 DjangoとJinjaは独自のテンプレート言語を定義します(特にJinjaには優れたドキュメントがあります)が、純粋なPythonを使用して、ユーザーがテンプレート言語を学ぶ必要はまったくありません。各アプローチの長所と短所を十分に認識しています。ユーザーが自分の好むものを決めましょう。互いに批判する必要はありません。

@Andre:db.table.fieldはフィールドオブジェクトを参照します。 「table.field」はフィールド名です。 str(db.table.field)は 'table.field'であるため、フィールド名が必要な場合はいつでもフィールドオブジェクトを渡すことができます。オブジェクトの代わりに文字列を使用する必要があるのは、まだ定義されていないフィールドを名前で参照する必要がある場合だけです...おそらく、この議論を適切な場所に移動する必要があります。 ;-)

Web2pyを試してみてください。気に入ったかどうかにかかわらず、私はあなたの意見を聞きたいです。

105
massimo

私は小さなWebアプリにweb2pyを使用しています。 Mechanical TurkプロジェクトでHITを実行し、それらを制御および視覚化するためのインターフェイスを提供しています。私はGoogle App Engineを使い始めましたが、データベースに直接アクセスできず、コードをアップロードするたびに永遠に待たなければならないという少し面倒なことにうんざりし、postgresでローカルサーバーに移動しました。 GAEは、いくつかのスケーリングを簡単にするために、ほとんどのものをより難しくします...スケーリングの助けが本当に必要でない限り、それを避けてください。

私はweb2pyが大好きです。 Django and Ruby= on Railsに比べて、学習と学習が​​非常に簡単です。すべてがシンプルです。問題(このボードでも笑)。

15
toomim

約6か月前にweb2pyを使い始めました。私はそれを選択しました。なぜなら、私はPHP=からPythonに移行し、Pythonの言語の真理のためによりオブジェクト指向のアプローチをしたかったからです。

Web2pyのオールインワンアプローチは本当に驚くべきものであり、非常に迅速に開始できます。

以前のsymfonyユーザーとして、私はすぐにテーブル構造に依存しないコンポーネントとフォームを見逃し始めました。

単純な登録フォームだけでは、Form DRYを実行する方法が見つかりませんでした。私にとって本当のバグはフォームの検証でした。詳細を忘れましたが、フォーム自体でフォームの検証を行うことになりました。何かがうまくいかなかったからです。

また、多くの文字が繰り返される大文字の単語の命名概念は、私のものではありません。

dba.users.name.requires=IS_NOT_EMPTY()
dba.users.email.requires=[IS_EMAIL(), IS_NOT_IN_DB(dba,'users.email')]
dba.dogs.owner_id.requires=IS_IN_DB(dba,'users.id','users.name')
dba.dogs.name.requires=IS_NOT_EMPTY()
dba.dogs.type.requires=IS_IN_SET(['small','medium','large'])
dba.purchases.buyer_id.requires=IS_IN_DB(dba,'users.id','users.name')
dba.purchases.product_id.requires=IS_IN_DB(dba,'products.id','products.name')
dba.purchases.quantity.requires=IS_INT_IN_RANGE(0,10)

名前は引用符で囲む必要がありますが、そうでない場合があります...また、web2pyですでに作成された例やサイトを見た場合、PHPを使用することから大きな前進は見られませんでした。

私はあなたをお勧めします:web2pyがあなたのために働くかどうか見てください。コミュニティ、特にマッシモ(作成者)が非常に親切でニースだからです。

また、データベースモデルを変更する場合、Djangoよりもはるかに迅速に開始でき、展開が容易で、面倒が少なくなります。

13
Andre Bossard

Massimoが上記で指摘したように、tenthrowのチームは tenthrow.com にweb2pyを使用します

開発作業のほとんどは2009年に行いました。スタックはcherokee、web2py、postgresql、およびAmazon s3を使用しています。これまで、さまざまなフレームワークとバックエンドで多くのpython Web実装を行ってきました。web2pyなしでこんなに早く簡単にtenthrowを実行できなかったと言うのは控えめな表現です。ウェブ開発の秘密を守った。

12
David Watson

私は長い間、Webフレームワークを評価しています。 PerlとPHPで独自の(オープンではない)フレームワークを作成しました。 PHPにはデッドエンドが組み込まれており、インフラストラクチャ全体がまだかなり貧弱ですが、Perlに戻りたくなかったので、PythonおよびPython DjangoなどのWebフレームワークをチェックしました、ターボギア、パイロン、web2py。あなた自身のものではないコードスタックを選択したい場合、物事をプログラムするための「正しい方法」がまだないので頭を悩ませることが多いなら、考えるべきことがたくさんあります。ただし、web2pyは私の現在のお気に入りです。なぜなら、著者は「本物のプログラマ」であるにもかかわらず、物事を簡単にしてくれるからです。 web2pyサイトの比較を見てください-pythonやターボギアのようなDjangoフレームワークがコードにそのような冗長性と複雑な構文を導入しなければならなかったのか疑問に思いました-web2pyはそれをIS構文を簡潔かつ簡単に保つことができるという事実!

@Armin:批判を明記していただけますか? web2pyの「Pythonセマンティクスのバイパス」はどこにありますか?あなたの言っていることが理解できない。私は今のところpythonにそれほど深くはないことを認めなければなりませんが、web2pyコードには何の問題もありません。実際、これは素晴らしいものであり、今日利用可能な最高のフレームワークの1つだと思います。

11
Snaky Love

学術目的でweb2pyを使用しています。約1年前、私はpythonanywhereでデジタル ドイツ語の文法の教科書 を公開しました。

リソースには認証が必要であり、役割、アクティビティ、およびグレードを持つ小さなLMSのように見えます。この種の初めての経験でした。そして、PHPは私にとって困難であり、web2pyのみがデータベースを処理する明確な方法を提供できたため、成功でした。Pythonテキスト分析やレポートのダウンロードなどの私の問題データベースについては、SQLiteで十分でした。

私の学生は、デザインとすべてが機能する方法が好きです。だから私は結果に非常に満足しており、私の大学のために他の興味深いアプリケーションを開発するつもりです。

Web2pyは、プログラマーほどコンピュータサイエンスの経験がない、応用言語学者やL2教師にとって非常に良いと思います。それが私の謙虚な意見でした。

7

私たちは中国語を教えるウェブサイト www.dominochinese.com で使用しています。ホストは pythonanywhere.com であり、そのシンプルさが気に入っています。私は、物事がうまくいくことを望んでいるのではなく、物事の構築に取り組んでいます。私はDjango=で1.5年間働いていましたが、嫌いでした。ある意味、web2pyはPHPですがPythonで。オブジェクト指向プログラミングに入ると、初心者から中級プログラマーにとって非常に混乱する可能性があります。

6
user2566926

Web2pyに投票します。私は自分の使用のために小さくても便利なものを開発する時間しかありません。

来月、Web2pyに最適なアプリを作成し、Googleアプリエンジンで実行できるようになることを願っています。

Web2py =新鮮な空気の息吹!

6
afewtips.com

Postgresqlで使用し始めています。しかし、生産からの長い道のり... Zope V2とRuby on Railsで、web2pyのアプローチが大好きです。

6
sparklewhiskers

ここにリストされているユーザーがいます: http://mdp.cti.depaul.edu/who

6
benefactual

Web2pyを使用していません。しかし、私はソースコードを見ましたが、それは多くの理由で恐ろしいものです。 1つは、データベース定義とビューおよびモデルであり、何がわからないのかは、グローバルな値の辞書に対して評価されます。その点でPHPのように感じます(名前の動作でPythonセマンティクスをバイパスします))、非常に非効率的であり、保守が難しいと想像できます。

最近、web2pyについてのそんなあいまいがどこから来ているのかわかりませんが、誰がそれを使用したいのか、本当に分かりません。

DjangoまたはPylonsの何が問題になっていますか?web2pyは、Djangoのパフォーマンスが向上したコードの数行でできません。読みやすく、多くの開発者が登場してすぐに問題を修正する確立されたプラットフォームで(問題を認めなければならない例外もありますが、一般に開発者は問題を迅速に修正します)

5
Armin Ronacher

私は2年間web2pyを使用していますが、このWebフレームワークは素晴らしいユニークなものです。使いやすく、多くのDBを受け入れますが、サポートされる最高のDBはpostgresです。 web2pyを使用して2つのプロジェクトを作成しましたが、非常に簡単です。 1つのプロジェクトは、運用システム(postgresを備えた4つのLinux lpar)で正常に実行されている財務管理とその他のメールトラッカーです。 web2pyは良い選択です

[web2py 2.5.1で作成された小さなアプリケーション]が更新されました

http://freitasmgustavo.pythonanywhere.com/calculoST/

5
sharkguto

私は今しばらくの間、Webフレームワークを評価しています。 web2pyを好むのは、フォローしやすく、コンパクトでありながら強力だからです。

4
frank

実際にはMySQLを使用していますが、web2pyは非常に多様であるため、すぐにpostgresqlに切り替えることができます:)

4
C J

非常に小さいので、アプリケーションで簡単に配布できるので気に入っています。

4
Zhe Li

7か月前にWeb2pyの使用を開始しました。すでにエルプラド(スペインの国立博物館)で制作中のアプリケーションが1つあります。すべてのシステムをチェックおよび自動化し、サーバー統計、アクセス統計などを作成するアプリを開発しました。

4

www.crowdgrader.org でGoogle Appengineの実稼働環境で使用しています。次のようにデータを保存します。

  • ACIDが必要なコアメタデータは、Google Cloud SQLに保存されており、非常にうまく機能しています。大きなテキストフィールドの場合、Google Cloud SQLにキーを保存し、データストアにキーと値を保存します。
  • ユーザーが入力したテキストは、Google Datastoreに保存されます(上記を参照)。CloudSQLにキーが保存されます。
  • ファイルのアップロードはブロブストアに保存されます。

複雑なクエリを必要とせず、最終的な一貫性を少しでも処理できるものの書き込み帯域幅を増やすために、より多くのストレージをデータストアに徐々に移行しています。

Web2py + appengine + Google Cloud SQL + Datastore + Blobstoreにとても満足しています。

4
Luca

これまで小さなプロジェクトでweb2pyを使用しましたが、私の会社でそれを紹介したいと思っています。私のお気に入りのWebフレームワークです。

私のブログ はweb2pyを使用してGAEで実行されています。

また、web2py上でFacebookアプリを実行しています: My Top 10 Gift

3
uolter

私はwebfactionのpostgresとGAEで本番環境でweb2pyを使用しています。

3
hoju

カスタムアプリケーション の制作で、gaeおよびgoogleデータストアでweb2pyを使用しています。これは非常に優れたフレームワークです。

私はGAEでの作業、高速かつ安定した作業のためにいくつかのマイナーな修正を行いました。私のgithub soyharsoでWeb2Pyバージョン変更の使用を公開しました。

GAEへのアップロードは高速で、バージョン管理アプリエンジンは安全です。コードをチューニングするためのGoogleの無料利用枠の提供は優れており、月額費用は適切です。

2

実稼働環境でWeb2pyをGoogle App Engineで使用しています。 https://www.nittiolearn.com を参照してください。

データの保存には、Google Cloud Storageが使用される大規模なリソースを保存する場合を除き、Google Datastore(web2py DAL経由でアクセス)が使用されます。過去5年間に、本番環境で大きな問題なく複数のweb2pyバージョンをアップグレードしました。

Google App Engineも長年にわたってほとんど摩擦がありませんでした。

しかし、5〜6年前に考えていたように、Web2pyもGoogleアプリエンジンも広く採用されていません。私が新しいプロジェクトを始めようとしているのであれば、これらの技術に取り組むことに興奮する開発者の数が限られているため、web2pyやアプリエンジンを使うことはまずありません。

2
Aravindan RS

まあ、私はWeb2Pyを専門的に、PostgreSQLで、そしてLinuxで使っています。 「 Ourway 」という名前のソーシャルネットワークで作業しています。 「 Blog 」の部分のような機能が好きかもしれません。

1
Farsheed

実稼働環境でweb2pyを使用しています。現在、初期の生産では、SQLiteを使用して開発していますが、それは簡単ですぐに使用できますが、後でMySQLに切り替える可能性があるためです。 Google App Engineを使用する予定はないと思います。

1
Ryan Cori

http://www.noobmusic.com はGoogle App Engineを使用しています。

1
Chris Hawkes

これは非常に古い回答ですが、とにかくチップします。 2008年にはDjango/Flaskと同様に素晴らしい選択だったかもしれません。そして、それはまだ良いかもしれません。しかし、今日の人々は、学習曲線の少ない方法で、即座に結果を求めています。

Web2pyは公平であるほど直感的ではありません。

MS Accessを使用するには、MVCの概念を勉強する必要がありますか? URLルーティングを気にすることはできませんでした。Web上にいくつかのテーブルを表示するだけで、できれば妥当性を検証する必要がありました。プラス認証。

これが http://jam-py.com/ のようなフレームワークが輝く場所です!あなたが失われないことだけでなく、数十年もの間オフィスを支配していたAccessを思い出させます。そして今でも2019年にルール。なぜですか?学習曲線はほとんどありません。

0
Ljudva