2016-11-04 1 views
0

저는 ror와 clip에 출연했습니다. 나는 파일을 업로드하기 위해 종이 클립을 사용하며, 종이 클립이 파일 ID를 어떻게 결정하는지 궁금합니다. 예를 들어 내 사용자 모델에서 클립 클립 첨부 "has_attachment_file"을 추가하면 파일 이름, 파일 유형, 업로드 시간 및 파일 크기를 포함하여 "사용자"테이블에 4 개의 새 열이 데이터베이스에 있음을 알 수 있습니다 (sqlite3 사용). 그러나 user.file.id에서 검색 할 수있는이 열의 파일 ID를 찾을 수 없습니다. 클립은 어디에서이 물건들을 보관합니까?클립 여기에 파일 ID가 저장됩니다

답변

0

첨부 파일은 User과 관련되어 저장되어 있지 않으며 바로 위에 저장됩니다. 그렇기 때문에 User 테이블에 여분의 열이 있고 왜 파일에 id이 없는지 이유가 있습니다.

User에 많은 파일을 저장하려면 모델을 별도로 모델링하고 레일즈 has_many을 사용해야합니다. 다음과 같음 :

class User < ActiveRecord::Base 
    has_many :images 
end 

class Image < ActiveRecord::Base 
    has_attached_file :file 
    belongs_to :user 
end