1

Go と Google AppEngine を試しています。メイン ファイルに複数のファイルをインポートまたはインクルードしたいと考えています。

たとえば、次のような複数の Web URL 関数を持つ init を含むファイルがあるとします。

func init() {
    http.HandleFunc("/", root)
    http.HandleFunc("/1", function1)
    http.HandleFunc("/two", function2)
    http.HandleFunc("/3hree", function3)
}

各関数を個別のファイルに入れたいと思います(たとえば、他の開発者が個別に作業できるようにするため、またはデバッグ時に読みやすくするためだけに)。

機能ごとに個別のパッケージを作成したくありません。これはやり過ぎのように思えますが、これを行う唯一の方法だと思います。

同じ質問をする別の方法:

テンプレートだけを含む別のファイルが必要な場合、これを go ファイルにプルする最良の方法は何ですか (インラインにする必要はありません):

const testPage =
`<!DOCTYPE html>
<html>
<body>
    <br>this is a test
</body>
</html>`
4

2 に答える 2

1

Google App Engine では、Go のファイル システム モジュールにアクセスできないため、これは不可能です。ファイル システムとしてファイルにアクセスすることはできません。私を信じて。私はもう試した。:)

あなたが言及したような最良のオプションはインラインです。理論的には、各テンプレートをパッケージとして持つことで、ある程度分離することができます。しかし、それは同じ概念です。

ハックのような別のオプションは、テンプレートを GAE データストアに保存することです。ただし、データ ストアの IO 操作には料金がかかります。それでも、インライン化と同じハックです。

于 2013-10-16T05:12:23.507 に答える