As a native speaker I can tell you a method we learn when in elementary school. It however requires you to know the nominative, genitive (+accusative for masculine) declensions of the word beforehand. This is no problem for kids with czech as their mother tongue but might be be quite challenging for foreigh learners. As such, I think it's best to use when you already have some intuition about declensions but aren't sure about what declension to use. Some words are tricky/not used enough that even native speakers have to use these methods to determine the correct declension.
Nouns
First you have to identify the gender of the word. This is done by "pointing at it". You use a nominative declension of a demonstrative pronoun with the noun. The pronouns are "ten", "ta", "to" translated to "he", "she", "it" respectively. This is where your intuition has to come in. You need to be able to chose the correct one. We do it by chosing the one that sounds natural. For a native speaker it's hard to make a mistake here but it will probably be hard for foreigners. So you might need to resort to brute-memorising it similar to learning german. Beware they are not the same as in English! For example "rose" -> "růže", in English you would use "it" however in Czech you would use the feminine "ta".
Now that you know the gender you need to indentify the model. The feminine and neuter are the easiest so I will cover those first. You need to know the nominative and genitive declensions of the word beforehand already though. You compare it's ending vowel with the endings of the models. Found a match? Great, you know what declension model this word uses! Example: "mother" -> "matka", gender is feminine, nominative of "matka" is well, "matka" and the genitive is "matky". The model "žena" has n."žena" g."ženy". You can see they share the same letter in their respective declensions so you know "matka" uses the same declensions as "žena".
With masculine it's a bit trickier since you need to also identify whether it is animate or inanimate. We do it by comparing it's nominative and accusative declension. If they are the same it is inanimate and if they differ it is, you guessed it, animate. Following is the same process. Another example: "knife" -> "nůž", nominative is "nůž" and accusative "nůž", they are the same so it is inanimate. Now we compare the nom. and dat. (Don't make the mistake of looking for a model ending with "ž", all we care about are the vowels, if there is no vowel, look for a model that doesn't end with a vowel either. This goes for all genders not just masculine) The only inanimate model that shares it's nominative and genitive ending is "stroj". And that's it!
Some things to look out for
- Do not assume gender of a word based on the word itself. Lot's of English-neuter words are of a different gender in Czech
- Do not assume if a word is animate or inanimate. Example: "snowman" -> "sněhulák" acts like an animate noun even though it is clearly an inanimate object
I would love to provide similar guides for adjectives, verbs etc. however this is already very long and took quite a bit of time to write down in a somewhat sensible manner. That said I hope my noun guide will be at least of some use to someone.