Více kategorií pro jeden článek   zodpovězená otázka

ASP.NET WebForms

ahoj, dělám si web ve Visual Studiu 2008 Express. Mám vytvořenou stránku, na které se zobrazují moje články. Články třídím do kategorií, ale nevím, jak jednomu článku přiřadit více kategorií.

Mám vytvořené dvě tabulky.

Articles a Kategorie

V tabulce Articles mám sloupec kategorie, který je přes relaci provázán s tabulkou kategorie.

Tedy.

Articles.kategorie = Kategorie.ID

Já ale nevím, co mám dělat, když bych chtěl jednomu článku přiřadít více kategorií :(.

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

Musíte vytvořit ještě jednu tabulku (říká se tomu vazebná tabulka), např. ArticleCategories. Ta bude mít tři sloupce, první bude primární klíč, druhý bude CategoryId, které bude ukazovat do tabulky kategorií, a třetí bude ArticleId, který bude ukazovat do tabulky článků.

Pak pro každou kategorii, ve které článek má být, do tabulky ArticlesCategories nacpete jeden záznam, který ho s tou kategorií propojí.

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

Tak jsem to tak udělal. Funguje to skvěle. Nicméně já přidávám články pomocí FormView. Teď mi to funguje tak, že přidám článek a pak na jiné stránce ho nacpu do různých kategorií. Lze ale nějak udělat, aby to šlo udělat i v tom formView? Nebo to lze jen tak, jak to mám do teď.

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

FormView už tohle nezvládne, musíte v nějaké jeho události OnInserted do příslušných kategorií přidat článek kódem. Možná by se dal FormView nějak rozšířit o podporu těchto situací, ale v základní výbavě to neumí.

nahlásit spamnahlásit spam 0 odpovědětodpovědět
                       
Nadpis:
Antispam: Komu se občas házejí perly?
Příspěvek bude publikován pod identitou   anonym.
  • Administrátoři si vyhrazují právo komentáře upravovat či mazat bez udání důvodu.
    Mazány budou zejména komentáře obsahující vulgarity nebo porušující pravidla publikování.
  • Pokud nejste zaregistrováni, Vaše IP adresa bude zveřejněna. Pokud s tímto nesouhlasíte, příspěvek neodesílejte.

přihlásit pomocí externího účtu

přihlásit pomocí jména a hesla

Uživatel:
Heslo:

zapomenuté heslo

 

založit nový uživatelský účet

zaregistrujte se

 
zavřít

Nahlásit spam

Opravdu chcete tento příspěvek nahlásit pro porušování pravidel fóra?

Nahlásit Zrušit

Chyba

zavřít

feedback