Öncelikle o bölgede herhangi bir bilgi düşünmeyin bana MVC çerçeveler yeni am not edelim.
Ben tasarımcı modelden bilgi almak zaman her tasarımcı için ilişkili products çekmek istiyorum, bir Tasarımcı modeli var.
Dernek bu yüzden pasta sihirli yüzden bu kendimi tanımlamak gerekiyor benim için yapmayacağım basit değildir. Ben öğreticiler takip etmekte ve ben yakın ama bunu hep birlikte kravat nasıl emin olduğumu düşünüyorum.
Sana doğru yerlerde designer_id fiş eğer tüm ilişkili ürünler seçmek olacağı çok uzun bir sorgu var.
Ben bunu ürünlerini almak için nasıl bilir böylece Tasarımcısı modelinde bir yerde bu sorguyu koymak gerekiyordu düşünüyorum.
İşte sorgu, gibi bakmak dize parçaları {$__cakeID__$}
ile değiştirilmesi gerekir designer_id
:
SELECT *, COUNT(DISTINCT tags.name) AS uniques
FROM products, products_tags, tags, designers, designers_tags
WHERE products.id = products_tags.product_id
AND tags.id = products_tags.tag_id
AND tags.id IN (
SELECT t.id
FROM tags t
LEFT JOIN designers_tags dt ON dt.tag_id = t.id
LEFT JOIN designers d ON d.id = dt.designer_id
WHERE d.id ={$__cakeID__$}
AND dt.include =1
)
AND products.id NOT IN (
SELECT products.id
FROM products, products_tags, tags
WHERE products.id = products_tags.product_id
AND tags.id = products_tags.tag_id
AND tags.id IN (
SELECT t.id
FROM tags t
LEFT JOIN designers_tags dt ON dt.tag_id = t.id
LEFT JOIN designers d ON d.id = dt.designer_id
WHERE d.id ={$__cakeID__$}
AND dt.include =0
)
)
AND designers.id = designers_tags.designer_id
AND designers_tags.tag_id = tags.id
GROUP BY products.id
HAVING uniques = (
SELECT COUNT(d.id) AS tag_count
FROM tags t
LEFT JOIN designers_tags dt
ON dt.tag_id = t.id
LEFT JOIN designers d
ON d.id = dt.designer_id
WHERE d.id = {$__cakeID__$}
AND dt.include =1
GROUP BY d.id
)
Ayrıca burada tasarımcı modeli:
class Designer extends AppModel
{
var $name = 'Designer';
var $actsAs = array('Sluggable' => array('separator' => '-', 'overwrite' => false, 'label' => 'name'));
var $hasAndBelongsToMany = 'Tag';
var $hasOne = 'AlternateName';
var $hasMany = 'Vote';
}
What would I need to do to make the Designer model use this query to automatically find its associated products?