User 모델과 Micropost 모델의 연관성
해설과 이해를 깊이 있게 하기 위해 출력하다.
마이크로소프트 모델의 생성
rails 명령을 사용하여 User 모델(사전 생성)과 연관된 Microsoft 모델을 생성합니다.$ rails generate model Micropost content:text user:references
위의 명령에 따라 Application Record를 상속받은 모델을 작성합니다.
※ 이때, User 시계를 만들 때와 마찬가지로 마이크로포스터 시계를 만들기 위해
마이그레이션 파일도 자동으로 생성됩니다.
user:references는 파라미터를 포함하고 명령을 실행한 후
사용자와의 일대일 관계를 나타내는 belongsto 코드
Microsoft 모델의 파일에 추가됩니다.
app/models/micropost.rbclass Micropost < ApplicationRecord
belongs_to :user # この行が追記される。
end
또한 자동으로 생성된 Micropost 모델의 마이그레이션 파일에서
색인 및 외부 키워드 참조 사용자ID 표시줄 추가, User 및 Micropost
관련 준비를 하다.
db/migrate/[timestamp]_create_microposts.rbclass CreateMicroposts < ActiveRecord::Migration[5.0]
def change
create_table :microposts do |t|
t.text :content
t.references :user, foreign_key: true
t.timestamps
end
add_index :microposts, [:user_id, :created_at] # ここの行!
end
end
※user_id와createdat의 양쪽을 하나의 배열에 포함시키는 것도 주의해야 한다.
이렇게 하면 Active Record는 두 키를 동시에 처리하는 복합 키 인덱스입니다.
(Multiple Key 인덱스).(복합 키 인덱스의 이해는 훗날.)
먼저 실행된 rails 명령을 통해 다음 표를 만듭니다.
User 테이블과 Micropost 테이블의 연관성
Micropost 테이블을 만들 때 파일에 추가된 belongsto와
app/models/micropost.rbclass Micropost < ApplicationRecord
belongs_to :user # この行。
end
User 테이블의 파일에서has수동 보충 many
app/models/user.rbclass User < ApplicationRecord
has_many :microposts
.
.
.
end
따라서 아래의 방법은 rails에서 사용할 수 있다.
메서드
용도
micropost.user
Microsoft에 연결된 User 객체로 돌아가기
user.microposts
User 마이크로폰 모음으로 돌아가기
user.microposts.create(arg)
사용자와 관련된 마이크로 메일박스 만들기
user.microposts.create!(arg)
사용자 관련 메일박스 만들기 (실패 시 예외 발생)
user.microposts.build(arg)
사용자와 연결된 새 Micropost 객체 반환
user.microposts.find_by(id: 1)
user에 연결하여 id가 1인 메일박스를 검색합니다
이 방법을 사용하면 링크를 통해 사용자가
마이크로폰 제작 가능.
예제)
rails 컨트롤러에서user = User.find(1)
micropost = user.microposts.build(content:"hoge")
# micropost変数のuser_idには、関連するユーザーのid(この場合はid:1)が自動的に設定される。
Reference
이 문제에 관하여(User 모델과 Micropost 모델의 연관성), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/yokke0059/items/5f18627e71e8b470f430
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
$ rails generate model Micropost content:text user:references
class Micropost < ApplicationRecord
belongs_to :user # この行が追記される。
end
class CreateMicroposts < ActiveRecord::Migration[5.0]
def change
create_table :microposts do |t|
t.text :content
t.references :user, foreign_key: true
t.timestamps
end
add_index :microposts, [:user_id, :created_at] # ここの行!
end
end
Micropost 테이블을 만들 때 파일에 추가된 belongsto와
app/models/micropost.rb
class Micropost < ApplicationRecord
belongs_to :user # この行。
end
User 테이블의 파일에서has수동 보충 manyapp/models/user.rb
class User < ApplicationRecord
has_many :microposts
.
.
.
end
따라서 아래의 방법은 rails에서 사용할 수 있다.메서드
용도
micropost.user
Microsoft에 연결된 User 객체로 돌아가기
user.microposts
User 마이크로폰 모음으로 돌아가기
user.microposts.create(arg)
사용자와 관련된 마이크로 메일박스 만들기
user.microposts.create!(arg)
사용자 관련 메일박스 만들기 (실패 시 예외 발생)
user.microposts.build(arg)
사용자와 연결된 새 Micropost 객체 반환
user.microposts.find_by(id: 1)
user에 연결하여 id가 1인 메일박스를 검색합니다
이 방법을 사용하면 링크를 통해 사용자가
마이크로폰 제작 가능.
예제)
rails 컨트롤러에서
user = User.find(1)
micropost = user.microposts.build(content:"hoge")
# micropost変数のuser_idには、関連するユーザーのid(この場合はid:1)が自動的に設定される。
Reference
이 문제에 관하여(User 모델과 Micropost 모델의 연관성), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/yokke0059/items/5f18627e71e8b470f430텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)