Import tasks via CSV (#51)
* Bare start on CSV support * Move core of CSV importer to operations * More validations, break out validation function * Validate dates and TaskList; convert errors to list of dictionaries * Finish upsert code, and documentation * Print msgs from the mgmt command, not the operations module * Handle BOM marks * Handle both in-memory and local file objects * Update readme * Working browser-upload view * Bail on incorrect headers * Fix default values and finish example spreadsheet * Change column order, update docs * Update index.md for RTD * First round of responses to PR feedback * Restore independent summaries/errors/upserts properties * PR responses * Split off reusable date validator into separate function * Fix URLs append * General test suite for CSV importer
This commit is contained in:
parent
184084c6a8
commit
4a99d90d1e
15 changed files with 599 additions and 15 deletions
|
@ -82,7 +82,7 @@ class Task(models.Model):
|
|||
on_delete=models.CASCADE,
|
||||
)
|
||||
note = models.TextField(blank=True, null=True)
|
||||
priority = models.PositiveIntegerField()
|
||||
priority = models.PositiveIntegerField(blank=True, null=True)
|
||||
|
||||
# Has due date for an instance of this object passed?
|
||||
def overdue_status(self):
|
||||
|
@ -115,7 +115,7 @@ class Task(models.Model):
|
|||
self.delete()
|
||||
|
||||
class Meta:
|
||||
ordering = ["priority"]
|
||||
ordering = ["priority", "created_date"]
|
||||
|
||||
|
||||
class Comment(models.Model):
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue