どのようにMasoniteで動作するように- Pythonレール/ララベルのようなWebフレームワーク


我々はすべてのRuby on Railsとどのように簡単にAPIとウェブサイトを作成することが大好きです.Pythonでは、Jjangoは一般的に主要なバッテリーは、多くのプロジェクトに使用されるフレームワーク含まれている.問題は、Jjangoが他の言語のためのより多くのRailsSqueアプローチフレームワークより非常に異なっているそのパターンを作る多くのquirksを持っています.MasoniteはPython言語ではるかに柵状の経験を提供します.

事前の要件
  • Python 3.6
  • ピップ

  • セットアップ
    空のフォルダの
  • はそれを活性化するためにそれからpython -m venv venvに新しい仮想環境をつくるためにsource ./venv/bin/activateを走らせます.
  • masonite をインストールする
  • pip install masonite
  • は、craftを走らせることによってインストールされていることを確認します.
  • 実行中のフォルダに新しいプロジェクトを生成するためにcraft newを実行します.
  • は248000 79142にデフォルトのサーバを実行するためにcraft serveを走らせます

    ルートの作成
    あなたは、柵またはlaravelフォルダ構造のような多くのフォルダのレイアウトに気づくでしょう.ルートを追加するには、コントローラを作成する必要があります.異なるリクエストがサーバーに対して実行されるときに実行するメソッドを持つクラスです.craft controller firstこれはアプリケーション/HTTP/コントローラの2つの方法でコントローラファイルを作成します.
  • __init__呼び出されるメソッドの前に使用するクラスコンストラクタです.この場合、リクエストを保持するクラスプロパティが作成されます.
    また、次の方法がある.
        def show(self, view: View):
            pass
    
    JSON APIを作ることに焦点を当てているので、Viewパラメーター(HTMLビューの配信に使用される)を本当に必要としません.Pythonの辞書やリストを返すことができます.
        def show(self):
            return {"look": "I returned some json!"}
    
    メソッド名は、それを識別するためのいくつかの方法を超えて問題ではないので、あなたが今のために欲しいものを呼び出すか、単に表示を維持することができます.

    コントローラをルートに接続する
    ルートは特定のコントローラ関数を指すURL終点とメソッドの組み合わせです.これはルート/webで処理されます.Pyルートの配列があります.
    """Web Routes."""
    
    from masonite.routes import Get, Post
    
    ROUTES = [
        Get("/", "WelcomeController@show").name("welcome"),
    ]
    
    本質的に、既存のルートは、サーバがGETリクエストを「/」と受け取るなら、応答はWelcomControllerのShow機能によって扱われます.
    我々のコントローラのルートを加えましょう.
    """Web Routes."""
    
    from masonite.routes import Get, Post
    
    ROUTES = [
        Get("/", "WelcomeController@show").name("welcome"),
        Get("/first", "firstController@show").name("first"),
    ]
    
    あなたのサーバーが動いていて、localhostに向かうことを確認してください.そう、それはそんなにハードではなかった!

    マサナイトに深く進む
    Masoniteはあなたのデータベースを移行し、モデルを生成するためのツールの世界を持っています.それを試して、私はそれを好きになると思う!