mirror of
https://github.com/getpelican/pelican.git
synced 2025-10-15 20:28:56 +02:00
Merge pull request #1959 from MrSenko/default-date
Accept string dates in DEFAULT_DATE. Fixes #1464; fixes #1476
This commit is contained in:
commit
d9605d005d
3 changed files with 15 additions and 1 deletions
|
|
@ -61,6 +61,8 @@ Setting name (followed by default value, if any)
|
||||||
If ``'fs'``, Pelican will use the file system
|
If ``'fs'``, Pelican will use the file system
|
||||||
timestamp information (mtime) if it can't get
|
timestamp information (mtime) if it can't get
|
||||||
date information from the metadata.
|
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
|
If set to a tuple object, the default datetime object will instead
|
||||||
be generated by passing the tuple to the
|
be generated by passing the tuple to the
|
||||||
``datetime.datetime`` constructor.
|
``datetime.datetime`` constructor.
|
||||||
|
|
|
||||||
|
|
@ -607,7 +607,10 @@ def default_metadata(settings=None, process=None):
|
||||||
metadata['category'] = value
|
metadata['category'] = value
|
||||||
if settings.get('DEFAULT_DATE', None) and \
|
if settings.get('DEFAULT_DATE', None) and \
|
||||||
settings['DEFAULT_DATE'] != 'fs':
|
settings['DEFAULT_DATE'] != 'fs':
|
||||||
metadata['date'] = SafeDatetime(*settings['DEFAULT_DATE'])
|
if isinstance(settings['DEFAULT_DATE'], six.string_types):
|
||||||
|
metadata['date'] = get_date(settings['DEFAULT_DATE'])
|
||||||
|
else:
|
||||||
|
metadata['date'] = SafeDatetime(*settings['DEFAULT_DATE'])
|
||||||
return metadata
|
return metadata
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -359,6 +359,15 @@ class RstReaderTest(ReaderTest):
|
||||||
|
|
||||||
self.assertDictHasSubset(page.metadata, expected)
|
self.assertDictHasSubset(page.metadata, expected)
|
||||||
|
|
||||||
|
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'])
|
||||||
|
|
||||||
|
|
||||||
@unittest.skipUnless(readers.Markdown, "markdown isn't installed")
|
@unittest.skipUnless(readers.Markdown, "markdown isn't installed")
|
||||||
class MdReaderTest(ReaderTest):
|
class MdReaderTest(ReaderTest):
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue