mirror of
https://github.com/getpelican/pelican.git
synced 2025-10-15 20:28:56 +02:00
Makes DEFAULT_DATE accept string dates; fixes #1464
This commit is contained in:
parent
c7b52bc730
commit
b6285ff792
3 changed files with 14 additions and 1 deletions
|
|
@ -53,6 +53,8 @@ Setting name (followed by default value, if any)
|
|||
If ``fs``, Pelican will use the file system
|
||||
timestamp information (mtime) if it can't get
|
||||
date information from the metadata.
|
||||
If given any other string, it will be parsed by the same method
|
||||
as article metadata.
|
||||
If set to a tuple object, the default datetime object will instead
|
||||
be generated by passing the tuple to the
|
||||
``datetime.datetime`` constructor.
|
||||
|
|
|
|||
|
|
@ -532,7 +532,10 @@ def default_metadata(settings=None, process=None):
|
|||
value = process('category', value)
|
||||
metadata['category'] = value
|
||||
if settings.get('DEFAULT_DATE', None) and settings['DEFAULT_DATE'] != 'fs':
|
||||
metadata['date'] = SafeDatetime(*settings['DEFAULT_DATE'])
|
||||
if isinstance(settings['DEFAULT_DATE'], basestring):
|
||||
metadata['date'] = get_date(settings['DEFAULT_DATE'])
|
||||
else:
|
||||
metadata['date'] = SafeDatetime(*settings['DEFAULT_DATE'])
|
||||
return metadata
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -208,6 +208,14 @@ class RstReaderTest(ReaderTest):
|
|||
for key, value in expected.items():
|
||||
self.assertEqual(value, page.metadata[key], key)
|
||||
|
||||
def test_default_date_formats(self):
|
||||
tuple_date = self.read_file(path='article.rst',
|
||||
DEFAULT_DATE=(2012, 5, 1))
|
||||
string_date = self.read_file(path='article.rst',
|
||||
DEFAULT_DATE='2012-05-01')
|
||||
|
||||
self.assertEqual(tuple_date.metadata['date'], string_date.metadata['date'])
|
||||
|
||||
|
||||
class MdReaderTest(ReaderTest):
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue