Mercurial > wikked
changeset 105:986f399a1471
Added a `force_resolve` mode for pages, fixed a crash.
author | Ludovic Chabant <ludovic@chabant.com> |
---|---|
date | Tue, 12 Nov 2013 13:48:06 -0800 |
parents | dfdfd092e250 |
children | 212dfbb75031 |
files | wikked/page.py |
diffstat | 1 files changed, 5 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/wikked/page.py Tue Nov 12 13:45:28 2013 -0800 +++ b/wikked/page.py Tue Nov 12 13:48:06 2013 -0800 @@ -35,6 +35,7 @@ self.wiki = wiki self.url = url self._data = None + self._force_resolve = False @property def path(self): @@ -129,7 +130,7 @@ self._ensureData() self._onExtendedDataLoading() - if self._data.has_extended_data: + if self._data.has_extended_data and not self._force_resolve: return try: @@ -238,6 +239,8 @@ def _loadData(self): db_obj = self._db_obj or self.wiki.db.getPage(self.url) + if db_obj is None: + raise Exception("Can't find page '%s' in the database. Please run `update` or `reset`." % self.url) data = self._loadFromDbObject(db_obj) self._db_obj = None return data @@ -278,7 +281,7 @@ data.local_links = [l.target_url for l in db_obj.links] - if db_obj.is_ready: + if db_obj.is_ready and not self._force_resolve: # If we have extended cache data from the database, we might as # well load it now too. data.text = db_obj.ready_text