Anki/tests
Damien Elmes b5c0b1f2c7 drop required/unique field properties
Instead of having required and unique flags for every field, enforce both
requirements on the first field, and neither on the rest. This mirrors the
subject/body format people are used to in note-taking apps. The subject
defines the object being learnt, and the remaining fields represent properties
of that object.

In the past, duplicate checking served two purposes: it quickly notified the
user that they're entering the same fact twice, and it notified the user if
they'd accidentally mistyped a secondary field. The former behaviour is
important for avoiding wasted effort, and so it should be done in real time.
The latter behaviour is not essential however - a typo is not wasted effort,
and it could be fixed in a periodic 'find duplicates' function. Given that
some users ended up with sluggish decks due to the overhead a large number of
facts * a large number of unique fields caused, this seems like a change for
the better.

This also means Anki will let you add notes as long as as the first field has
been filled out. Again, this is not a big deal: Anki is still checking to make
sure one or more cards will be generated, and the user can easily add any
missing fields later.

As a bonus, this change simplifies field configuration somewhat. As the card
layout and field dialogs are a popular point of confusion, the more they can
be simplified, the better.
2011-11-24 22:16:03 +09:00
..
off deck -> collection 2011-11-23 17:47:44 +09:00
support ensure duplicate model creation times are accounted for 2011-08-26 22:33:24 +09:00
__init__.py initial commit from hg 2008-09-27 23:50:03 +09:00
shared.py deck -> collection 2011-11-23 17:47:44 +09:00
test_cards.py drop required/unique field properties 2011-11-24 22:16:03 +09:00
test_collection.py drop required/unique field properties 2011-11-24 22:16:03 +09:00
test_decks.py groups -> decks 2011-11-23 19:28:09 +09:00
test_find.py groups -> decks 2011-11-23 19:28:09 +09:00
test_importing.py deck -> collection 2011-11-23 17:47:44 +09:00
test_latex.py facts -> notes 2011-11-23 12:37:21 +09:00
test_media.py deck -> collection 2011-11-23 17:47:44 +09:00
test_models.py facts -> notes 2011-11-23 12:37:21 +09:00
test_remote_sync.py fix syncing tests 2011-11-23 20:11:21 +09:00
test_sched.py deckCounts -> deckDue 2011-11-24 17:04:26 +09:00
test_stats.py deck -> collection 2011-11-23 17:47:44 +09:00
test_sync.py drop required/unique field properties 2011-11-24 22:16:03 +09:00
test_undo.py facts -> notes 2011-11-23 12:37:21 +09:00
test_upgrade.py remove remaining CSS; more template properties into div 2011-11-18 08:25:56 +09:00