사용자가 체중, 신체 측정 등과 같은 정보를 등록, 로그인 및 업데이트 할 수있는 간단한 체중 관리 응용 프로그램을 만들고 있습니다. 장고를 잠시 사용하지 않았으며 느리게 배우는 것이 가장 좋습니다. 내가 전에 잠시 쉬었던 곳의 관행. 이 사람들이 내가 사용자에 ForignKey와 '통계'라는 간단한 응용 프로그램을 만들었습니다별도의 모델에서 사용자 정보 업데이트
등 페이스 북으로 로그인 할 수 있습니다로
나는 사용자 등록을 관리 할 장고 - allauth을 사용하고 있습니다.
class Stat(models.Model):
user = models.ForeignKey(User, default=False)
height = models.CharField(max_length=20)
weight = models.CharField(max_length=20)
waist = models.CharField(max_length=20)
hips = models.CharField(max_length=20)
upperleg = models.CharField(max_length=20)
upperleg = models.CharField(max_length=20)
calf = models.CharField(max_length=20)
bodyfat = models.CharField(max_length=20)
사용자가 할 수 있기를 원하는 것은 일일/주 단위로 로그인 및 업데이트 통계입니다. 그런 다음 이전 통계를 검토 할 수 있습니다. 이것은 아마도 위의 접근법에 기초한 모델 양식을 통해 이루어질 것입니다. 시간이 갈수록 더 복잡해질 것입니다.
다른 방법으로 어떤 장점이 있습니까? 최선의 접근 방식이 최선이라면? 거기에 사용자의 통계를 쉽게 검토 할 수 있도록 관리자의 사용자 페이지 안에 해당 모델의 모든 개체를 나열 할 수있는 방법이 있습니까?
미리 감사드립니다.
안녕 @zubhav 덕분에, 그 많은을 도왔다. 사용자에게 액세스해야하는 각 앱 내에서 사용자 모델을 확장하겠습니까? 그래서 내 '통계'애플 리케이션 내부에 새로운 UserProfile 모델을 만들 수 있습니까? 또는 UserProfile에 대한 새 앱을 만드시겠습니까? 첫 번째 것이 맞을 것이라고 확신하지만, 그게 맞는지 확인하고 싶습니다. 좋은 작은 글을 여기에서 발견했습니다. - https://simpleisbetterthancomplex.com/tutorial/2016/07/22/how-to-extend-django-user-model.html#onetoone – JDavies
사용자를 '확장'하는 대신 모델을 만들려면 OneToOne User (사용자에 대한 OneToOne) 링크가있는 완전히 다른 모델을 만들어야합니다. 이는 사용자가 누군가를 식별/인증하는 데 엄격하게 사용되어야하는 모델이기 때문입니다. 높이와 무게와 같은 User 객체에 별도의 필드를 갖는 것이 가장 좋지 않습니다. 이는 단순히 엔티티와 직접 관련이 없기 때문입니다. 아마 위의 내용이 실제로 의미 한 것이지만 '확장'이라고 말하면서 명확히하고 싶습니다. 하지만 네, 모든 새로운 앱 안에 새로운 프로필 모델을 만들 것입니다. – zubhav
첨부 한 링크를 방금 클릭했습니다. 예, 올바른 방법입니다! – zubhav