2011-12-11 5 views
1

저는 사용자가 스포츠 "트윗"(예 : "테니스, 스쿼시")을 제출하고 서버가 파트너와 일치시키는 첫 번째 간단한 Rails 앱을 개발하고 있습니다. 서버는 유사한 트윗을 기반으로 한 SportMatches 목록을 반환하며 다른 사람의 트윗에 답장하고 파트너로 수락 할 수있는 다양한 옵션 (예 : 이메일, SMS)을 사용합니다. 처음에는 모델링이 직설적이었습니다. 사용자 has_many SportTweets 및 SportTweet이 User에 속합니다. 알림은 단순히 사용자의 일부이거나 사용자와 일대일 관계로 모델링되었을 수 있습니다.기존 Rails 스키마에서 익명 사용자를 어떻게 모델링합니까?

내 비즈니스 요구 사항이 조금 바뀌 었습니다. 이제 SportTweets을 게시 할 수있는 익명 사용자가 생겼습니다. 계정/프로필이 없기 때문에 짹짹과 함께 알림 (예 : 이메일, SMS)을 제출해야합니다. 이 모델을 레일스 모델로 만드는 방법을 모르겠습니다. SportTweets은 이제 익명이거나 인증 된 사용자 게시 (AUP)입니다.

  • 종류 : 그래서, 지금 내 SportTweets 테이블에는 다음과 같은 열 것 중 하나 "익명"또는 "AUP"
  • USER_ID : 익명
  • 스포츠 : 만 AUP
  • notifications_id에 대한 : 모든
  • post_location에 대한 : 모든
에 대한 모든
  • POST_DATE에 대한

    알림 테이블이 있습니다. 알림 레코드는 사용자 또는 SportsTweet에 속합니다. 나는 이것을 다형성 연관들로 모델링 할 것입니다.

    그냥 레일스처럼 보이지 않습니다. 비슷한 문제가있는 사람이 있습니까? 어떻게 그걸 해결 했니?

  • 답변

    0

    약간의 검색과 답변이 STI였습니까? The Rails 3 Way - Chapter 9를 참조하십시오.

    +0

    에 도움이 될 수있는 코드에 의해 이어 유용한 정보를 The Rails 3 Way - Chapter 9.에서 유용하게 바꿔주세요. 5 년 후 답변이 나오면 The Rails 3 Way는 절판되고 답을 찾기가 어렵지만 여전히 유용 할 것입니다. – ahsteele

    0

    가능한 경우 장치를 사용하십시오. 이 link이 도움이 될 것으로 생각합니다. 일부 응용 프로그램에서

    , 그것은 사용자가이 게스트 사용자가 한 브라우저 세션이 지속으로 유지하려는 등록 또는. 일반적으로 로그인 한도 (인간)하기 전에 주위에 전달하는 게스트 사용자 개체를 가지고 유용 .

    우리의 접근 방식은 데이터베이스에 게스트 사용자 개체를 만들고 그 ID를 세션 [: guest_user_id]에 저장하는 것입니다. 사용자가 등록하거나 로그인하는 경우 게스트 사용자를 삭제하고 세션 변수를 지 웁니다. 사용자가 로그인하면 사용자가 로그인이 CURRENT_USER되지 않은 경우 도우미 함수, current_or_guest_user는 guest_user를 반환합니다.

    당신이 대답 더하려면 그 page

    관련 문제