활성 해싱 정보

오리지널 응용 프로그램을 만드는 과정에서 ActiveHash를 가져와 설치했습니다.
잊지 않기 위해서 기사를 쓰고 싶어요.

Active Hash란 무엇입니까?


우선, ActiveHash는 Gem으로 모델 파일에서 변경되지 않은 데이터를 직접 설명하여 데이터베이스에 저장하지 않은 상태에서 데이터를 처리할 수 있다.
예컨대 도도부현 등은 변경되지 않겠지.
이런 데이터는 데이터베이스가 아니라 모델로 관리된다.
내가 개발한 오리지널 응용 프로그램의 부분은 아래의 이미지 부분이다.

ActiveHash는 문서 문제 및 사진 제목 섹션에 사용됩니다.

가져오기 방법


우선gemfile에 다음과 같은 내용을 기술합니다
Gemfile
gem 'active_hash'
그리고 행복의 종착역에서
bundle install

서버를 시작한 후 다시 시작합니다.
현재 배치가 완료되었습니다.

모델과 데이터베이스를 만듭니다.


방금 이미지 정보는post모델을 만들고 데이터베이스에 저장했습니다.
우선post모델을 만듭니다.
% rails g model post

생성이 완료되면 데이터베이스에서 설명합니다.
class CreatePosts < ActiveRecord::Migration[6.0]
  def change
    create_table :posts do |t|
      t.string     :title
      t.string     :sentence,       null: false
      t.integer    :genre_id,       null: false
      t.references  :user,           foreign_key:true
      t.timestamps
    end
  end
end

관심은 아래의 부분이다.
t.integer    :genre_id,       null: false
열 이름에 id를 붙여서 열의 형식을integer 형식으로 지정합니다.
기술하면
% rails db:migrate
현재 데이터베이스 설정이 완료되었습니다.

Genre 모델 생성하기


다음은genre 모델을 만들고 저장하는 내용을 설명합니다.
% rails g model genre
그리고 제작된 모형이 없는 상태에서 다음과 같이 기술한다.
class Genre < ActiveHash::Base
  self.data =[
   { id: 1, name: '--' },
   { id: 2, name: '文章問題' },
   { id: 3, name: '写真にタイトルをつけてください' },
 ]

end
먼저 모델에 대해 Genre 클래스를 정의한 다음 ActiveHash::Base 클래스를 상속합니다.
ActiveHash::Base는 모형(클래스)에서 ActiveHash를 사용할 때 필요한 클래스입니다.ActiveHash의 Gem에서 정의합니다.
또한 계승 활동 산열::Base를 통해 활동 기록과 같은 방법을 사용할 수 있습니다.
그리고 저장하고 싶은 물건에 번호를 붙여 데이터베이스에서 그 번호를 관리한다.

연결 설정


post모델에 다음과 같은 내용을 기술합니다.
extend ActiveHash::Associations::ActiveRecordExtensions
  belongs_to :genre
투고한 물건은 한 종류와 관련이 있다.따라서 Article 모델에는belongs_설정 to.
또한 extend ActiveHash::Associations: ActiveRecord Extensions를 작성하여 설정해야 합니다.

설정 확인


그런 다음 검증을 설정합니다.
validates :genre_id, numericality: { other_than: 1, message: 'Select'}
즉, ID가 "1"인 경우 저장할 수 없습니다.
이번에 ID가 1일 때 "--"을 설정했기 때문에 검증된 기술입니다.

설명 뷰


마지막으로 보기의 설명입니다.
<%= f.collection_select(:genre_id, Genre.all, :id, :name, {}, {class:"select-box"}) %>
매개변수의 내용은 다음과 같습니다.
<%= form.collection_select(保存されるカラム名, 配列データを指定する, カラムに保存される項目, 選択肢に表示されるカラム名, オプション, htmlオプション) %>
첫 번째에서 네 번째 매개변수를 설정해야 합니다.
다음은 ActiveHash 설정 방법입니다.
아니면 초보자가 틀릴 수도 있어.
필요한 것이 있으면 지적해 주십시오.

좋은 웹페이지 즐겨찾기