이것은 Ruby에서 메소드와 클래스가 정의되는 방법과 API 문서를 읽는 방법에 대한 질문입니다. 즉 다음 create_table
방법을 정의하는 방법/수입/그래서 같은 코드에서, ActiveRecord::Migration
에서 사용할 수 있습니다 상속 :Rails Migration 클래스에서 create_table과 같은 메소드를 어떻게 사용할 수 있습니까?
class CreateProducts < ActiveRecord::Migration
def up
create_table :products do |t|
t.string :name
...
자바 세계에서오고, 나는 기본 클래스 또는 유지 mixin에 대한 링크를 제공하기 위해 API docs 예상 모든 것이 정의되었습니다. 그러나 내가 Migration
에 대한 페이지를 보면 도움이되는 손으로 문서를 볼 수는 있지만 create_table
의 가장 상세한, 신뢰할 수있는 정의에 대한 링크는 없습니다. 나는 ActiveRecord::ConnectionAdapters::SchemaStatements
에 그것을 찾기 위해 구글을 사용하지만, 심지어 두 파일의 소스 코드를보고 : 나는 Migration
의 범위로된다 방법 create_table
표시되지 않습니다
Migration in git
create_table in git
.
이 메서드는 클래스 eval 클래스 인 CommandRecorder 내부에서만 정의되고 있다고 생각합니다. – Kaeros
@Kaeros는 수정 해 주셔서 고마워요, 내 전화에서 그것을보고있었습니다. 나는 그에 따라 편집했다. – fmendez
Migration에서 CommandRecorder를로드하지 않습니까? 그래서'Migration :: CommandRecorder.new.create_table'은 말할 수 있지만'Migration.new.create_table'는 말할 수 없습니다. –