가 나는 또한 그 기술많은 많은 장고 내가 할 싶습니다
라는 다른 테이블과 manytomany 관계로 모델 그룹이 기술 라는 다른 테이블과 manytomany 관계로 그 사용자 프로필 모델이 SQL 이 쿼리는 사용자 프로필에 각 그룹과 공통된 기술 수를 계산합니다.
는 또한
누군가가이 작업을 수행하는 데 도움이 수 만들기를 나에게 특정 사용자 프로필 다른 사용자 프로필에 cummon에이 기술의 수를 계산하는 쿼리를하고 싶습니다. 당신에게
모델 감사합니다
class UserProfile(models.Model):
slug = models.SlugField(max_length=200)
user = models.ForeignKey(User, unique =True)
skills = models.ManyToManyField(Skills,null=True, blank=True)
courses = models.ManyToManyField(Course,null=True, blank=True)
class Group(models.Model):
slug = models.SlugField(max_length=200)
name = models.CharField(max_length=200)
skills = models.ManyToManyField(Skills,null=True, blank=True)
class Skills(models.Model):
slug = models.SlugField(max_length=200)
name = models.CharField(max_length=200)
그래서 나는 그룹
groupRecommendation = Group.objects.extra(
select={
'skills_count': """
SELECT COUNT(*) FROM axiom_alto_userprofile_skills
JOIN axiom_alto_group_skills on axiom_alto_userprofile_skills.skills_id = axiom_alto_group_skills.skills_id
WHERE axiom_alto_group_skills.group_id= axiom_alto_group.id AND axiom_alto_userprofile_skills.userprofile_id = %d """ % profile.id,
},
).order_by('-skills_count')
을 위해 그것을 할 수있는 방법을 발견하지만 사용자간에 그것을하는 방법을 모른다
모델을 공유하십시오. – karthikr
감사합니다. –