나는 어떻게 처리해야 할 데이터 데이터베이스에 저장됩지 적절한 모델,Ruby on Rails?
-
02-07-2019 - |
문제
상상 웹 응용 프로그램에서 작성 Ruby on Rails.의 부분의 상태는 응용 프로그램에 표시되는 데이터는 적합하지 않의 설명 모델이다.이 상태를 설명해야 지속되는 동일한 데이터베이스로 모델이다.어디에서 다른 모델이 될 필요는 단 하나의 인스턴스의 수준이며,그것은 없는 관계로 다른 클래스입니다.
누군가는 것도 이 같은?
해결책
귀하의 설명에서 나는 생각한 레일을 설정 플러그인을 해야 하는 당신이 필요합니다.
에서 추가 정보:
"설정하는 플러그인을 관리하는 테이블의 글로벌 키 값 쌍으로 쉽습니다.처럼 생각하는 글로벌 해쉬에 저장할 데이터베이스를 사용하는 간단하 ActiveRecord 같은 방법입니다.추적 전역 설정하고 싶지 않는 하드드로 당신의 레일 앱입니다.저장할 수 있습니다 어떤 종류의 개체입니다.문자열,숫자,배열,또는 어떤 객체입니다."
다른 팁
의 경우에 데이터를,그리고 그것은 데이터베이스에서,그것의 일부는 모델입니다.
이것은 정말 RoR 문제;그것은 일반적인 OO 디자인 문제입니다.
는 경우 그랬다면,아마 방법을 찾을 개념화하는 데이터 모델로 다음 단지 그것을 만들하는 단일 공장으로는 방법과 개인 생성자입니다.
또는,당신은 당신이 생각할 수 있습의 형태로 기록합니다.는 경우에,당신은 단지 로거래(또한 단일)는 읽기/쓰는 데이터베이스에 직접 호출되는 시작과 끝에서의 각 요청을 합니다.
레일 경우,데이터는 데이터베이스에 그것의 모델입니다.이 경우에는 모델을 호출 할 수 있습니다"Configuration",그러나 그것은 아직도 매핑 ActiveRecord 클래스에는 레일 시스템입니다.
이 데이터는 진정한 정적지 않을 수 있습니다 필요한 데이터베이스에서 모두.당신이 사용할 수 있(예를 들어)변수 응용 프로그램에서 컨트롤러:
class ApplicationController < ActionController::Base
helper :all
@data = "YOUR DATA HERE"
end
의 숫자가 접근할 수 있는 인스턴스화하기 위해 사용된 데이터에 사용하기 위해습니다.
나는 확실하지 않다 왜 당신이 그것을 말할 수 없에 맞는 레일 모델입니다.
는 경우에 그것은 단지는 복잡한 데이터 구조,저장의 무리가 루비 코드에서는 텍스트 필드에서 데이터베이스:-)
예를 들면 너는 복잡하고 중첩된 해시 저장하려는 할당,다음의'데이터'텍스트 필드:
ComplexThing.data = complex_hash.inspect
고 싶을 때는 다시 읽기,단순히
complex_hash = eval ComplexThing.data
이 2 개의 더 많은 것에 대해 이 솔루션:
- 데이터 구조되지 않은 표준 루비스,간단한 검사하지 않을 수 있습니다.당신이 볼#<MyClass:0x4066e3c> 어디서,무언가가 되지 않는 직렬화를 제대로.
- 이것은 단순한 구현.를 확인 할 수 있습니다 진짜 마샬링 솔루션을 경험하는 데 유니코드 데이터 또는 만약 당신이 정말로 많이 저장 사용자 정의 만든 클래스입니다.