В настоящее время я занимаюсь практикой 3-х рельсов, и я работал над системой аутентификации и следовал учебному пособию по Railscasts. Райан из Railscasts сделал своего рода обновление к этому уроку с некоторыми незначительными изменениями, чтобы воспользоваться преимуществами рельсов 3.1
например. has_secure_password
Так что часть кода в моем Sessions_controller изменилась на:
class SessionsController < ApplicationController
def new
end
def create
user = User.find_by_username(params[:username])
if user && user.authenticate(params[:password])
session[:user_id] = user.id
redirect_to root_path, :notice => "Logged In"
else
flash.now.alert = "Invalid Credentials"
render "new"
end
end
def destroy
session[:user_id] = nil
redirect_to root_path, :notice =>"Logged Out"
end
end
Что я хотел бы знать, так это то, что часть кода в методе / действии создания должна быть в модели? Хорошо или плохо иметь этот код там?
Каким правилам я должен следовать, поскольку я хочу научиться правильному пути, а не приобретать вредные привычки, потому что я прошел ту часть изучения структуры, в которой вещи начинают приобретать смысл гораздо чаще, чем они.
Совет ценится ..
Что я хотел бы знать, в частности, это ..
1. Когда программист узнает, когда код принадлежит модели? Как он / она принимает это решение?