4日目のプログラム 完成

ん〜。。でも難しい。
確かに動いたけど、別にアレンジしたわけではないので
ちゃんとミスタイプがなければ動いて当たり前。
解説を読んでもなかなか理解するのには時間がかかるし
完全にすべては理解できない。。


くどいけどとにかく続けてみよう。


ちなみに昨日動きが変だったところの原因は単なるミスタイプ。


1つは、モデルのpage.rb内にあるnew_directoryメソッドの戻り値としてdir変数の内容を
返す必要があるのだが、そのdir変数の記載がなかった。

def new_directory
begin
dir = rand(MAX_VALUE).to_s
Dir.mkdir(fullpath(dir))
write_attribute(:directory, dir)
rescue Errno::EEXIST
dir = nil
end until dir
dir ←これが抜けてた
end

これは、新規にアップロードするとき、写真がアップできないことに影響していた。


もう1つは同じモデルのpage.rb内にあるビューのfile1に対するフィールドの読み取りメソッドと
書き込みメソッドへの記載が逆だった。

def file1
add_file(file)
end

def file1=(file)
end

 def file1
end

def file1=(file)
add_file(file)
end

これが影響して、2枚の写真が同時にアップロードできるはずが
1枚しかアップロードできなかった。


こうしてエラーが出て、その原因が何だったかわかると
なんとなくその部分はその役割が理解できる。
ポジティブに考えればミスタイプも悪くない。