2

League of Legendsチャンピオンに関する情報を含むxmlファイルを含む多くのサブフォルダーを含むフォルダーがあります。私の最終的な目標は、すべてのリーグ オブ レジェンド チャンピオンを一覧表示するインデックス ページと、各チャンピオンの詳細を示すショー ページを作成することです。

Railsを学ぶ前にこれをやってみましたが、これが今のところです。


File.open("champion_list.txt", "w") do |file_name|
    File.open("champions.txt", "r").each do |folder_name|
      folder_name = folder_name.strip
      xml = File.open("LoLChampions/data/#{folder_name}/champion.xml").read
      file_name.write(xml)
    end
end

行ごとの内訳...

#open the list of every champion
#read each champion individually and do this to each one
#strips the individual champions of useless text including a ton of /n /br's
#reads the champion file inside of it's folder which is named after the name of each champion that has been grabbed from the textfile.
#each champion has a folder named the name of the champion and each champion folder contains images of the champion and a champion.xml file.

理想的にはこれを手で解析したいのですが、他の既存のライブラリを使用することもできます。JSONの使用について言及しました。

次に、各チャンピオンのサブフォルダーには画像が含まれているため、すべての画像を抽出して assets/images フォルダーに配置する必要があるかどうか疑問に思っています。

第三に、すべてのチャンピオン xml ファイルは Rails 4.0 ではどこに移動しますか?

これは非常に大きな質問ですが、部分的にのみお答えください。

ありがとう、イアン

4

1 に答える 1

4
  1. XML を解析するには、Nokogiri http://nokogiri.org/を使用します。
  2. 必ずしも画像をアセット (またはパブリック) の下に移動する必要はありません。これらのイメージのルートとアクションを作成し、send_file を使用することもできます。http://apidock.com/rails/ActionController/DataStreaming/send_fileを参照してください。
  3. この部分を理解できたかどうかはわかりません。Rails には、チャンピオン xml ファイルの場所に関する規則がありません。便利だと思われる場所を選び、それを README に文書化することを忘れないでください。そうすれば、他の開発者 (または将来のあなた) がどこを探せばよいかがわかります。
于 2013-09-05T17:41:32.337 に答える