Rails의 모델 기능 정보

5065 단어 모델RubyRails

Rails1 모델 정보


Rails 모형의 노트입니다.
Rails의 모델은 데이터베이스 및 외부 서비스와 교환하는 기능을 말합니다.
Rails에서는 OR 매퍼를 사용하기 때문에 관계 데이터베이스를 객체처럼 처리할 수 있습니다.
데이터베이스 연결을 설정하기 위해서 config 파일 아래 데이터베이스입니다.yml이라는 파일을 사용합니다.
데이터베이스는 sqlite3을 사용합니다.
database.yml
# SQLite version 3.x
#   gem install sqlite3
#
#   Ensure the SQLite 3 gem is defined in your Gemfile
#   gem 'sqlite3'
#
default: &default
  adapter: sqlite3
  pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %>
  timeout: 5000

development:
  <<: *default
  database: db/development.sqlite3

# Warning: The database defined as "test" will be erased and
# re-generated from your development database when you run "rake".
# Do not set this db to the same as development or production.
test:
  <<: *default
  database: db/test.sqlite3

production:
  <<: *default
  database: db/production.sqlite3

여기서 우리는 edvelpoment(개발),test(테스트),production(정식) 환경이 이미 준비되어 있음을 알 수 있다.

모델 생성하기


모델은 다음 명령으로 만들 수 있다.
$ rails g model モデル名 field:type[...] [options]
모델 이름 다음에 테이블에서 필드 유형을 차례로 지정합니다.

서류가 속속 작성되고 있네.
단지 이렇게 해서 관건적인 데이터베이스는 아직 만들어지지 않았다.
Rails에서 테이블을 만들거나 수정할 때 마이그레이션 기능을 사용합니다.
$ rails db:migrate
라고 명령해 집행했다.

만약 성공한다면 이런 결과가 있을 것이다.

얻은 데이터가 화면에 나타나다


코드를 기술하기 전에 이 모델 폴더 아래의 코드를 확인하십시오.
나는 책이라는 이름으로 모델을 했다.
book.rb
class Book < ApplicationRecord
end
이 북에는 객체 배열의 데이터가 포함되어 있는 것 같습니다.
화면에 북을 띄우려고 컨트롤러 기능과 뷰 기능을 사용하셨네요^^
--controller.rb
class HelloController < ApplicationController
  def list
    @books = Book.all
  end
end
생성된 컨트롤러에 상기 코드를 추가합니다.
@books = Book.all에서, 그룹의 데이터를 @book에 저장하여 보기 기능에도 사용할 수 있도록 합니다.
list.html.erb
<% @books.each do |book| %>
<tr>
    <td><%= book.title -%></td>
</tr>
<% end %>
그러면 @books 대상에서 제목과 관련된 내용만 선택한다.
다음 단계에서는 루트를 정의합니다.
routes.rb에 다음 코드를 추가합니다.
get 'アプリ名/list'
그런 다음 객체의 URL에 액세스할 때

잘 나오네!!
팽이 프로세서를 봤어요.

북에서 GET를 얻었습니다!!!
좋아졌어, 웃어.
그럼 이따 봐요!

좋은 웹페이지 즐겨찾기