M2M relations are represented by managers, and can be controlled like managers
(self)
| 1877 | self.assertEqual(nyt._state.db, "default") |
| 1878 | |
| 1879 | def test_m2m_managers(self): |
| 1880 | """ |
| 1881 | M2M relations are represented by managers, and can be controlled like |
| 1882 | managers |
| 1883 | """ |
| 1884 | pro = Book.objects.using("other").create( |
| 1885 | pk=1, title="Pro Django", published=datetime.date(2008, 12, 16) |
| 1886 | ) |
| 1887 | |
| 1888 | marty = Person.objects.using("other").create(pk=1, name="Marty Alchin") |
| 1889 | |
| 1890 | self.assertEqual(pro.authors.db, "other") |
| 1891 | self.assertEqual(pro.authors.db_manager("default").db, "default") |
| 1892 | self.assertEqual(pro.authors.db_manager("default").all().db, "default") |
| 1893 | |
| 1894 | self.assertEqual(marty.book_set.db, "other") |
| 1895 | self.assertEqual(marty.book_set.db_manager("default").db, "default") |
| 1896 | self.assertEqual(marty.book_set.db_manager("default").all().db, "default") |
| 1897 | |
| 1898 | def test_foreign_key_managers(self): |
| 1899 | """ |
nothing calls this directly
no test coverage detected