błąd zmienia prawa dostępu do pliku

Hej,

Mam taki nietypowy błąd. Zapisuję dane itp. Po zapisie prawa do pliku quiz.controller.rb są automatyczne zmieniane(600) i muszę je ręcznie przestawić. Spotkał się ktoś z takim czymś.?

[code=ruby] def save

#calculate point
@questions = AppQuizQuestion.where(:quiz_id => AppQuiz.find_by_app_id(params[:app_id].to_s).id)
@point = 0
@questions.each do |point|      
  if params[:n][point.id] == point.correct
    @point = @point + 1
  end
end


if AppQuizAnswer.where("quiz_id='"+AppQuiz.find_by_app_id(params[:app_id]).id.to_s+"' and user_id='"+session['user_id_app'].to_s+"' and time != ''").count == 0
  @app = AppQuizAnswer.find_by_user_id_and_quiz_id(session['user_id_app'].to_s,params[:quiz_id].to_s)
  @app.time = params[:time]
  @app.html = params[:n].inspect
  @app.point = @point
  @app.save
  @access = true
end
render :json => @access

end[/code]
taki mam błąd

LoadError (cannot load such file -- /home/rails/app/app/controllers/app/quiz_controller.rb): activesupport (3.2.9) lib/active_support/dependencies.rb:469:in `load' activesupport (3.2.9) lib/active_support/dependencies.rb:469:in `block in load_file' activesupport (3.2.9) lib/active_support/dependencies.rb:639:in `new_constants_in' activesupport (3.2.9) lib/active_support/dependencies.rb:468:in `load_file' activesupport (3.2.9) lib/active_support/dependencies.rb:353:in `require_or_load' activesupport (3.2.9) lib/active_support/dependencies.rb:502:in `load_missing_constant' activesupport (3.2.9) lib/active_support/dependencies.rb:192:in `block in const_missing' activesupport (3.2.9) lib/active_support/dependencies.rb:190:in `each' activesupport (3.2.9) lib/active_support/dependencies.rb:190:in `const_missing' activesupport (3.2.9) lib/active_support/inflector/methods.rb:230:in `block in constantize' activesupport (3.2.9) lib/active_support/inflector/methods.rb:229:in `each' activesupport (3.2.9) lib/active_support/inflector/methods.rb:229:in `constantize' activesupport (3.2.9) lib/active_support/dependencies.rb:554:in `get'
PS ten kod który dałem jest kodem roboczym …

Tak na marginesie, masz na myśli quiz_controller.rb, prawda?

Bardziej niż kod jaki zapisujesz przydałaby się informacja jaki masz system operacyjny, edytor, etc.

A tak przepraszam, pomyliło mi się coś :slight_smile:

mac os 10.8
edytor text mate 2
do bazy: navicat

Zauważyłem, że jak czyszczę coś w tabeli programem navicat, a w programie do ftp (transmit) mam zaznaczony jakiś plik to zmieni mi atrybuty dla tego pliku. Ale to bez sens.

ftp? do czego uzywasz ftp?

usuwam sobie wszystkie pliki ktore tworzy app. można też z konsoli ale jakoś wolę FTP.

Ale takie pytanie już inne przy okazji żeby nie tworzyć nowego temau.

Do metody save dostaję JSON

Processing by App::QuizController#save as JSON Parameters: {"app_id"=>"23", "quiz_id"=>"1", "time"=>"00:04", "n"=>{"1"=>"2", "2"=>"1", "5"=>"1"}} Completed 500 Internal Server Error in 5ms
ale nie mogę się dokopać do elementów “n”

params[:n][1] nie zwraca mi nic … a powinno np 2.

próbowałem też za pomocą JSON.parse
ale to samo…

[code=ruby]{“app_id”=>“23”, “quiz_id”=>“1”, “time”=>“00:04”, “n”=>{“1”=>“2”, “2”=>“1”, “5”=>“1”}}

params[“n”][“1”] == “2”[/code]

czyli

@point = 0 @questions.each do |point| if params["n"][point.id] == point.correct @point = @point + 1 end end
powiino działać a nie działa… params[“n”][point.id] jest puste…

Ps działa

@questions.each do |point| if params["n"][""+point.id.to_s+""].to_s == point.correct @point = @point + 1 end end
ale te atrybuty dalej mi się zmieniają SAME

PS. Problem rozwiązany. Edytor każdemu zapisanemu plikowi zmieniał prawa dostępu. Reset edytora pomógł.

Potencjalnym winowajcą jest TM 2

http://blog.macromates.com/2008/expandrive-seamless-sftp-mounts/#comment-3138

wiem wiem już to czytałem. chodź TM 2 jest cudowny. I przesiadka na inny edytor mi się nie widzi …