tukreb, вот я и пытаюсь понять почему нельзя решить стандартным способом. В описании задачи не было того, что там должны быть какие-то дополнительные поля. Так-то понятно, что и так тоже можно, но если нужны только два ключа, то работа будет гораздо сложнее (джойнить ManyToMany гораздо проще чем тот вариант, что предложил автор)