| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -569,9 +569,15 @@ def reload(self, transaction: spanner_transaction.Transaction = None | |||
| 569 | 569 | updated_object = self._metaclass.find(transaction, **self.id()) | |
| 570 | 570 | if updated_object is None: | |
| 571 | 571 | return None | |
| 572 | + start_values = {} | ||
| 573 | + | ||
| 572 | 574 | for column in self._columns: | |
| 575 | + value = getattr(updated_object, column) | ||
| 576 | + start_values[column] = copy.copy(value) | ||
| 573 | 577 | if column not in self._primary_keys: | |
| 574 | - setattr(self, column, getattr(updated_object, column)) | ||
| 578 | + setattr(self, column, value) | ||
| 579 | + | ||
| 580 | + self.start_values = start_values | ||
| 575 | 581 | self._persisted = True | |
| 576 | 582 | return self | |
| 577 | 583 | ||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -148,6 +148,7 @@ def test_reload_reloads(self, find): | |||
| 148 | 148 | find.return_value = models.SmallTestModel(updated_values) | |
| 149 | 149 | model.reload() | |
| 150 | 150 | self.assertEqual(model.value_1, updated_values['value_1']) | |
| 151 | + self.assertEqual(model.changes(), {}) | ||
| 151 | 152 | ||
| 152 | 153 | @mock.patch('spanner_orm.model.ModelApi.create') | |
| 153 | 154 | def test_save_creates(self, create): | |
| Back | FazBrowse Home | New Git URL |
0 commit comments