問題タブ [hyde]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
xml - JekyllやHydeのような静的サイトジェネレーターがXMLやXSLTよりも優れている理由は何ですか?
テンプレートやスタイルの変更が簡単になるように、実際のコンテンツを最終的な出力レンダリングから分離しておくことで、考え方は非常に似ているようです。
django - 動的 Web サイトのブログに静的 Web サイト ジェネレーターを使用していますか?
動的な Web サイトにブログ/コンテンツ セクションを設けることを検討しています。Hyde のような静的 Web サイト ジェネレーターを使用して、Web サイトの「静的コンテンツ部分」を生成することは賢明ですか?
利点は次のとおりです。
- 他の数人が記事を投稿するのが簡単/簡単
- パフォーマンス
- ウェブサイトの残りの部分と同様のスタックを使用 - 私の場合、Hyde と django テンプレートと同じ構文を使用
python - Hyde LessCSS プラグインが less ファイルを CSS に変換しない
利用可能な最新バージョン (0.8.4) を使用して hyde サイトを立ち上げようとしています。組み込みコマンドを使用してサイトを作成しましたがhyde -s /path/to/dir create
、すべて正常に機能しました。次に、見つけたいくつかの例に従って、site.yaml
ファイルを編集して LessCSS サポートを取得しようとしました。
それが機能することを確認するために、非常に基本的なlessファイルを追加しました。
そしてそれを私のアプリケーションに含めました:
サイトを生成すると、コマンド ライン出力に適切な css が表示されbody{background-color:blue};
ますが、ファイルdeploy/media/css/style.css
はファイルの単なるコピーless
です。これに関するドキュメントは素晴らしいものではありません - 誰かがそれを動作させましたか? ありがとう。
django - Django 内から Hyde のようなものを使用できますか?
ページの 75% が静的コンテンツで、残りが典型的な「Web アプリケーション」モデルに適合する数百ページのサイトがあります。私の好みは Django です。そのため、これに基づくソリューションを主に検討してきました。
コンテンツは非常にオーダーメイドです。ほとんどのページは、基本的なサイト クロム以外をほとんど共有しておらず、十分に複雑であるため、リッチ テキスト エディターを使って正しい出力を提供しようとするよりも、HTML で記述した方が簡単です。したがって、私が現在行っている方向は、テンプレートでコンテンツを定義することです。単一のビューがあり、入力パスをテンプレート パスとして使用します。これにより、サイトの各ページはファイル システム内のページとして保持されますが (参照しやすく、リビジョン管理で追跡しやすくなります)、各ページは任意の数の共通要素 (ヘッダー、フッター、ナビゲーション) を共有し、独自のデータをそれらを必要に応じて。
ただし、これは多くの詳細で行き詰まります。例えば:
- 他のページとのページ データの共有。たとえば、ページで定義されたタイトルは、他のページのナビゲーション メニューなどに表示される必要があります。テンプレートからブロック値を取得することに関するこの質問を見つけましたが、これは非常に複雑なようです (そしてスケーラブルではありません)。
- 関連する問題: 何かをブロックとして定義すると、一度しか使用できなくなります。{% block title %} の例 (通常、ページ内の複数の場所に配置される) を SO で何度か見てきましたが、優れた解決策はありません。
- 複数/柔軟な継承。ブレッドクラムの場合はページの祖先から継承したいかもしれませんが、レイアウトの場合はおそらく別のものから継承したいと思うでしょう (例: 1 列と 2 列の基本テンプレート)。
これらの特定の問題は、主にインクルードとカスタム テンプレート タグを使用して、単独で解決できると思いますが、その道を見下ろすと、回避したいハックの上にハックが積み重なっていることがわかります。これはかなり単純にする必要があります。簡単に理解できるシステム。
これらを調べる過程で、これらの問題の多くに対処しているように見えるHydeに出会いました。特に、サイト構造の感覚があり、ページをナビゲートするための優れたツールを提供することが本当に気に入っています.
しかし、シームレスにフィットする必要があるダイナミックなパーツはまだすべて持っています。したがって、コンテンツ ページに対して行うことはすべて、動的アプリケーションの一部であるすべてのテンプレートで実際に利用できるはずです。また、「各ページをテンプレートにする」アプローチで私が本当に気に入っているのは、特定のページのパスを urls.py に追加してカスタム ビューを指定するだけで、そのページの扱いを変更できることです。
このタイプのユースケースに適したソリューションはありますか? より一般的に言えば、これは Django に要求してはいけないことなのでしょうか? ここで、ファイル システムを CMS データベースとして使用しようとしているような気がしますが、これはスケーリングの問題につながる可能性がありますが、Django はテンプレート コンテンツを適切に処理およびキャッシュしているようです。ソリューション (django-cms、feincms、ファイバー) 静的コンテンツ用に 1 つのソリューションを用意し、インタラクティブ コンテンツ用にまったく別のソリューションを用意するという考えは本当に好きではありません。
編集
カスタムタグを使用してページのメタデータ/構成を処理した結果は次のとおりです。
- ページ データのディクショナリがトップ レベルで渡されます (タグがそれに書き込み、スタック内のより上位のコードがそれを読み取ることができるようにするため)。
- カスタム データ タグにより、ページはこのページ データにデータを書き込むことができます
- その他のカスタム タグは、データから構造 (ナビゲーション、ブレッドクラムなど) を読み取り、レンダリングします。
主な部分は、データ (JSON として書き込まれる) をグローバル dict に読み込むタグです。
各ページは次のようにデータを設定します。
これは機能しますが、実際には不透明で壊れやすいようです。
- グローバル dict を何らかの方法で追加する必要があります。現在、ビューで行っていますが、カスタム コンテキスト プロセッサの方が優れていると思います。
- 実際にレンダリングされるように、これは継承されたブロックにある必要があります
- スーパーのデータが必要になる場合があるため (パンくずリストなど)、{{ block.super }} を呼び出す必要がありますが、スーパーのデータがターゲット ページのデータを上書きしないように正しい順序にする必要があります。
私は Django の操作方法に逆らっているように感じます。私が見逃していたこの種のことを処理するためのより良い方法があることを望んでいました。
python - Hyde で新しいコンテンツを生成するには?
私はHydeを学び始めており、Hyde で書かれたいくつかのブログを Github から複製しました。これらのサンプル ブログを Web ブラウザーで正常に生成し、ローカルで提供できます。ただし、実際に新しいコンテンツを生成する方法がわかりません。たとえば、HTML またはマークダウンで新しいファイルを追加して、そのファイルをサイトに提供するにはどうすればよいですか? docsでこれを行う方法についての言及はありません。私は何が欠けていますか?私が使用しているサンプル ブログのディレクトリ構造は次のようになります。
HTMLまたはマークダウンファイルを追加して提供する方法を誰か説明できますか?
python - Hyde (Python) はスタンドアロン ソリューションですか?
Hyde のWeb サイトによると、Hyde は Django テンプレート エンジンに基づいています。Django と Hype をインストールしたくありません。はい/いいえの質問: スタンドアロンのソリューションですか?
python - Windowsのvirtualenvにpipを使用してhydeをインストールする際に問題が発生しました
これはpip install hyde
、Windowsのvirtualenvで試してみたときに得られるものです。なぜこれが起こっているのですか、どうすれば解決できますか?
python - 再構築されたテキストにグローバルインクルード
ブログ/ウェブサイトにreStructuredTextを使用していて、グローバルインクルードファイルを追加したいと思います。HTML出力の生成に使用している設定ファイルにアクセスでき、変更できてうれしいです。どちらの構文も理解できません。
- デフォルトのインクルードファイルをパーサーに追加する
- Pythonのdocutilsを使用してPythonでdirective/inline-rolesなどを定義する
ソースコードとドキュメントを読んでみましたが、理解するのが少し難しいと思いました。非常に明白な何かを見逃したことを願っていますが、次のようなことをしたいと思います(最初の部分はすでにそこにあるものです-ファイルの残りの部分はjekyll-rstプラグインで見ることができますソース(それに直接リンク)
これを行う簡単な方法はありますか?defaults.rst
ファイルを定義して、毎回ロードするのは素晴らしいことです。
編集:これは私がグローバルに含めることができるようにしたいもののいくつかの例です(カスタムディレクティブもいいでしょうが、おそらくそれらをコードで書くでしょう)
google-app-engine - Google App Engine に関するブログ
こんにちは、Google App Engine でブログをホストしようとしています (Google の品質と無料 ...)。
私はjekyll プロジェクトが大好きですが、それは Ruby で開発されているため、appengine でホストすることはできません。
hyde プロジェクト( jekyllの python 実装バージョン)を見つけました。それを appengine で使用することを考えています。既に google appengine で使用している人はいますか?
python - ハイドの単一の投稿ビューから抜粋を非表示にする方法は?
このHydeプロジェクトで問題が発生しました。ホームページとブログのインデックスページに、個々のブログ投稿の抜粋と画像でマークされたセクションが正しく表示されますが、個々のブログ投稿を表示すると、抜粋も表示されますが、これは表示されません。欲しいです。
個々の投稿テンプレートをカスタマイズしようとすることは私が試したオプションですが、ホームページとブログのインデックスにそれらの画像と抜粋セクションを表示できませんでした。
デフォルトで投稿コンテンツファイルに抜粋を書き込むことができるソリューションですが、単一の投稿ビューからそれを非表示にするのが理想的ですが、提案を受け入れることができます。
乾杯、
レオン