2

アップロードされた SCO をデバッグするためのより良いワークフローが必要です。現状では、アクティビティでファイルを編集し、再パッケージ化してアップロードし、テストする必要があります。多くの場合、1 行のコードを変更するだけで済みます。サーバー上でそのファイル、そのコード行を編集できると非常に便利です。これまでのところ、Moodle がファイルを管理していることがわかったので、アップロード後に名前が変更されたファイルを見つけて解読するのは現実的ではないようです。

抽出時にSCO内のファイルの名前を変更したり再配置したりしないようにMoodleを設定する方法はありますか? 実際、SCO をデバッグするための最適で最速のワークフローに関する提案はいつでも受け付けています。

4

2 に答える 2

4

問題の背景

Moodle 2.0以降、ファイルは従来の方法でサーバーに保存されなくなりました/this/is/the/path/to/my.file。代わりに、ファイルは再ハッシュされ、リポジトリに保存されます (つまりmoodledata、一見ランダムなデータのコレクションとしてフォルダ全体に分散されます)。これにより、セキュリティと OS 間の互換性が向上しますが、FTP 経由で SCORM zip パッケージを単純にアップロードしたい人にとっては複雑になります。Moodle 2.0 でのファイル処理に関する詳細情報は次のとおりです。

ソリューションへのパス

更新したいファイルを見つけて更新しましょう。

  1. phpmyadmin を実行し、mdl_filesテーブルに移動し、filenameフィールドで名前でファイルを見つけます (それが であるとしましょうportrait.jpg)
  2. contenthashフィールドを見てくださいabcde1234567890。これは、ファイルがmoodledata/filedir/ab/cd/という名前のフォルダーに保存されていることを意味しますabcde1234567890
  3. 更新されたファイルの名前を に変更portrait.jpgabcde1234567890、アップロードして上書きします。
  4. phpmyadmin に戻りfilesize、レコードのフィールドをportrait.jpg更新されたファイルのサイズで更新します。

明らかに、このプロセスは自動化できます。ファイルをアップロードできるようにするスクリプトを作成する必要があります。その後、mdl_files でそのファイルを検索し、正しいフォルダーに保存して、それに応じてすべてのフィールドを更新します。

別のアイデア

外部パッケージ タイプを有効にします (また、「起動ごとに更新」も有効にします)。サイト管理 / プラグイン / アクティビティ / SCORM に移動し、下のボックスにチェックを入れます。これで、SCORM パッケージを別のサーバーから直接起動できるようになるため、Moodle がそれを台無しにすることはありません。もちろん、他の (おそらくクロスドメイン関連の) 問題で実行することもできます。

于 2013-04-08T13:35:29.637 に答える