문제

최근에 나는 그가 무언가를 '특징'할 수있는 사이트 관리자를 위해 무언가를 추가하도록 요청 받았다.

이 토론에서는 그것이 '추천 기사'라고 가정 해 봅시다.

따라서 당연히 우리는 이미 '기사'의 데이터베이스 모델을 가지고 있으며 ~ 20 개의 열이 있습니다.

내 옵션 :

  1. '추천'부울 (또는 int)의 압정과 주어진 시간에 단 한 가지만 소개 될 것임을 깨달았습니다.

  2. 팝업 될 수있는 다른 기능 크리프 항목을 보유 할 새 모델을 만듭니다.

  3. 나는 당신의 제안을합니다! ;)

이 경우에 무엇을합니까? 나는 항상 이것을 발견 한 후, 나는 단지 하나의 칼럼에 무언가에 대해 일을하는 것을 싫어합니다. 이 정보는 지속되어야합니다.

도움이 되었습니까?

해결책

한 번에 하나의 기사 만 소개 할 수 있다면 BOOL 열을 추가하는 폐기물입니다. 레벨로 올라가고 특집 가시드에 열을 추가해야합니다. site_settings 테이블이 있습니까?

다른 팁

아마도 기본적으로 키 가치 저장소 인 간단한 2 열 테이블을 추가 할 것입니다. 그런 다음 값과 같은 새 열을 추가하십시오 (featured_article_id, 45) 또는 첫 번째 주요 ID가 무엇이든.

편집 : Rmeador의 의견에서 지적했듯이, 이것은 비교적 단순한 상태를 유지하는 한 좋은 해결책 일뿐입니다. 보다 복잡한 데이터를 저장 해야하는 경우보다 유연한 솔루션을 알아내는 것을 고려하십시오.

속성 테이블을 갖는 것과 같은 확장 가능한 모델을 사용한 다음 링크 테이블을 사용하여 기사와 속성 사이의 다수의 관계를 형성 할 수 있습니다. 이런 식으로 이러한 종류의 기능은 스키마를 수정할 필요가 없습니다.

Parameter_Name 및 Parameter_Value 열이있는 Global_Settings 테이블의 종류가 있습니다. 특집 기사 ID를 여기에 넣으십시오.

이와 같은 빠른 것들을 위해, 나는 일종의 설정 테이블을 포함하고 싶습니다.

CREATE TABLE Settings (
    SettingName NVARCHAR(250) NOT NULL,
    SettingValue NVARCHAR(250)
)

우주 당 또는 고객 당 설정이 필요한 경우 글로벌 대신에 열을 추가하여 해당 특정 사용자/고객에게 식별 할 수 있습니다. 그런 다음 "FeatureDarticle"에 행을 추가하고 문자열에서 ID를 구문 분석 할 수 있습니다. 매우 최적화되지는 않지만 일반 텍스트는 매우 유연하며 정확히 필요한 것 같습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top