2011-02-08 12 views
3

Webベースのソリューションとして表示できる表形式のデータ構造(タブ区切りテキストファイル)を作成する必要があります。私は、Webベースの開発でほとんど経験のないバイオインフォマティクスのプログラマーです。私はdjangoがPythonコミュニティで非常に暑いことを知っていますが、私は先に進み、djangoに関する本を買う前にここで質問したかったのです。このようなことを達成するためのテクノロジースタックの選択肢は何でしょうか。 40-50列と100.000行の表を表示し、特定のデータ項目に基づいてユーザーにデータをフィルタリングする必要があります(つまり、特定の列に特定の値を持つ行のみを表示し、記録されたデータのみを表示します。月曜日とは、この質問があまりにも漠然とまたは愚かであるが、私は本当にここにいくつかの基本的な指導が必要な場合、私は申し訳ありませんWebベースの表形式データの表示にPythonベースのソリューションが必要

)他のすべての平日を非表示にします。 おかげ

答えて

1

Djangoはこれを行うことができますが、私は行くための最善の方法は、ジャンゴの岩下Javascriptのフレームワークを使用することです私は現在、これをやっていると思います。 ExtJSにはさまざまなタイプのグリッドがありますが、私は「ライブ」グリッドが完璧だと思います。

あなたは毎回100,000行をロードするために持っていけないように、これは、ユーザーが見ているだけで何、行のx量をロードします。また、フィルターなどが同様のことを行う

他のJavaScriptフレームワークにだけでなく、他の多くの機能構築されていますが、より少ない程度にYUIと私の意見はJQueryである

編集/だから、明らかに

精巧ここでは初心者クラッシュコースの場所はありませんが、私の意見では、あなたがしなければならないことがいくつかあります。

これはまずJSON string返しDjangoのビューを作成することによって動作します。 (もしその文が意味をなさないならば、私はDjangoをスキミングすることをお勧めしますtutorial ...実際には、とにかくそれをやるべきでしょう)Pythonは辞書/ csvのようなデータ型を変換するメソッドを持っていますTSV lol)をこの形式に変換します。あなたがこれを持っているとき(あなたがDjangoにダイビングするとき、それはもっと意味をなされるでしょう)、あなたはExtJSグリッドを作成し、それをそのURLに向けます。

ExtJSグリッドhereについてのチュートリアルがたくさんあります。特に、Tutorial:Grid PHP SQLが役に立ちそうです。明らかにPHPではなく、概念は同じです。

残念ながら、私は、これはJavaScriptをせずに簡単に行うことができると思い、私はあなたを表示するために私自身のいずれかの例を持っていけないが、このようなものについての資源のトンがありますが、私は本

+0

はい、JavaScriptは確かに意味があると思いますこれであなたの経験についてより多くの情報を得るのが大好きです。あなたはあなたの答えを詳述してください。問題は、私はおそらく、この後にjavascriptとdjangoを使用しないので、私は本当にこれを達成するために不可欠なものを得たいと思っています。 – biomed

+0

私はあなたが望むものが欲しいと思っています...ごめんなさい: – neolaser

+0

と本の話http://www.djangobook.com/en/2.0/私は非常に役に立つリソースだと思っています。 date – neolaser

2

Djangoはかなり簡単にこれを行うことができます。

+0

私はいくつかのターゲットを絞った読書をすることができますので、あなたの答えを詳しく教えてください。 – biomed

+0

http://docs.djangoproject.com/ja/dev/topics/templates/ http://docs.djangoproject.com/en/dev/topics/db/queries/ –

1

を買う気にwouldntは。アウトラインのneolaserが私の好みの解決策でもありますが、djangoはこれを行うことはできません。あなたのデータベースに要求を取得受け入れ、その内容のオフに基づいてクエリを作る

  • ビューに合わせてmodels.pyを設定するには、

    1. が必要になります。 http://docs.djangoproject.com/en/dev/ref/models/querysets/
    2. これらのクエリの結果を表示し、あなたのビューが解釈するのGET要求を行うことができますテンプレート。

    djangoはよく使用されるフレームワークなので、さまざまな用語(google: "django views"、 "django models"など)でランナウトを見つけるのはかなり簡単です。

  • +0

    あなたの権利は、それだけでは、ジャンゴ単独で行うことができ、正直言って、おそらくより速くて簡単です。私は100,000以上の行をスクロールしてスクロールさせ、失敗した大きなオーバーヘッドを持っていると思います。しかし、もう一度、私はあなたが改ページし、検索/フィルタ機能の完全なセットを持っていると思います... – neolaser

    +0

    ええ、私は実際にスライスの構文(mymodel.objects.all()[99]、私は思う)彼のために、私はあなたのコメントを見ました "ここでは初心者のクラッシュコースの場所ではないことが明らかです"と私は何が適切か分からなかった。 – canisrufus

    +0

    また、私のポイントは、ティムの答えに対応するのに十分ではないと思うが、チェリーピーを見てから、彼は彼が最も簡単で最善のソリューションだと思う傾向がある。 – canisrufus

    1

    あなたが言うことが本当にあなたがやっていることなら、私はDjangoが過労かもしれないと言っています。たぶんまずCherrypy(tutorial参照)のような単純な基本フレームワークを試して、簡単なページ/フォームを提供してください。今すぐ必要なのは、CSVを読み込み、フィルタリングしたり、ページしたり、フォーマットしたりするためのコードです。

    0

    このようなものをすばやく簡単にまとめるには、Web開発の経験があまりありません。web2pyが最適です。インストールや設定は不要で、依存関係はなく、Webサーバー、リレーショナルデータベース、Webベースの統合開発環境と管理インターフェース(demo)、jQuery統合(JavascriptとAjax用)があります。それはvery easy to learnであり、ease of use and developer productivityのために設計されています。含まれている足場のアプリケーションと多くの賢明なデフォルトの動作のおかげで、非常に少ないコードで多くの作業を行うことができます。 DataTables

    ためのweb2pyのプラグインの場合 -

    • を - jqGrid
    • powerTableためのweb2pyのプラグイン(source code):

      テーブル/グリッドディスプレイ用として、あなたはおそらく使用することができますあなたが始めるのを助ける必要がありますか質問がある場合、あなたは非常に友好的で応答性の高いmailing listから多くの助けを得るでしょう。

    関連する問題