Я новичок в Rails и сейчас решаю ситуацию, как наиболее эффективно сохранить данные в базе данных. Моя форма содержит 10 входов (= 10 столбцов в таблице) и 11-й вход для файла.
Если я использовал
@mail = Mail.find(params[:id]).save
Так что я получу что-то вроде этого на свой стол (столб):
--- !ruby/object:ActionDispatch::Http::UploadedFile
content_type: image/jpeg
headers: |
Content-Disposition: form-data; name="mail[logo]"; filename="panama-city-15.jpg"
Content-Type: image/jpeg
original_filename: panama-city-15.jpg
tempfile: !ruby
Но мне нужно хранить только имя файла - "panama-city-15.jpg". Таким образом, опция для каждого ввода делает отдельное сохранение, примерно так:
@mail = Mail.new(:mail_id => @mail_source.id.to_i,
:a => params[:mail][:a],
:b => params[:mail][:b],
...
:logo => params[:mail][logo].original_filename)
Но я думаю, что нет необходимости вводить 10 одиночных строк из-за "params [: mail] [logo] .original_filename" ...
Так что я хотел бы спросить вас, если есть какой-нибудь лучший способ, как решить эту ситуацию ...