保存する前にいくつかのフィールドをチェックして、デフォルトのブラウザー言語に変更したいと考えています。
before_save フィルターを使用したい:
def update
@website = Website.find(params[:id])
if @website.language == "Automatic (by user's browser language)"
@website.language = full_language(request.env['HTTP_ACCEPT_LANGUAGE'].scan(/^[a-z]{2}/).first)
end
respond_to do |format|
if @website.update_attributes(params[:website])
format.html { redirect_to @website,
notice: 'Note: code has been updated. Please replace the code you have on your website with the code below. Only then changes will take effect.'}
format.js
end
end
end
確認する必要があります:
if @website.language == "Automatic (by user's browser language)"
@website.language = full_language(request.env['HTTP_ACCEPT_LANGUAGE'].scan(/^[a-z]{2}/).first)
end
また、作成アクションでは機能しますが、更新では機能しません。
これどうやってするの ?