Skip to content

Commit

Permalink
Add the shell command.
Browse files Browse the repository at this point in the history
Remove the AutoField from the ModelForm.
Add date/time fields to mysql.
  • Loading branch information
abinnewies committed Feb 2, 2011
1 parent 12f283e commit e8049db
Show file tree
Hide file tree
Showing 6 changed files with 29 additions and 26 deletions.
2 changes: 1 addition & 1 deletion lib/contrib/admin/views.js
Original file line number Diff line number Diff line change
Expand Up @@ -133,7 +133,7 @@ exports.adminChange = [
if (form && !request.params.id) {
response.redirect(drty.urls.reverse('__adminChange',
request.params.model,
form.id));
form.model.id));
} else {
nav.render(form, model);
}
Expand Down
7 changes: 7 additions & 0 deletions lib/core/management/commands/shell.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
(function() {

require('./commands').add('shell', function(argv) {
require('repl').start('>>> ');
});

})();
37 changes: 18 additions & 19 deletions lib/db/backends/mysql/columnmeta.js
Original file line number Diff line number Diff line change
Expand Up @@ -126,28 +126,27 @@ exports.DateTimeFieldMeta = ColumnMeta.extend({
sqlType: 'datetime',

toSQL: function(value) {
if (value === null) {
return null;
}
return value === null ? null : drty.utils.strftime('%Y-%M-%D %H:%M:%S', value);
}
});

function pad(num) {
return num < 10
? '0' + num
: String(num);
}
var year = value.getFullYear(),
month = pad(value.getUTCMonth() + 1),
day = pad(value.getUTCDate()),
hour = pad(value.getUTCHours()),
min = pad(value.getUTCMinutes()),
sec = pad(value.getUTCSeconds());

return year + '-' + month + '-' + day + ' ' + hour + ':' + min + ':' + sec;
exports.DateFieldMeta = ColumnMeta.extend({
sqlType: 'date',

toSQL: function(value) {
return value === null ? null : drty.utils.strftime('%Y:%M:%D', value);
}
});

exports.ForeignKeyMeta = exports.IntegerFieldMeta.extend({
exports.TimeFieldMeta = ColumnMeta.extend({
sqlType: 'time',

toSQL: function(value) {
return value === null ? null : drty.utils.strftime('%H:%M:%S', value);
}
});

exports.ForeignKeyMeta = exports.IntegerFieldMeta.extend({
initialize: function(Model, column) {
this.parent(Model, column);
this.sqlName = column.getDbColumn() ||
Expand Down Expand Up @@ -177,8 +176,8 @@ exports.getMetaForColumn = function(Model, column) {
'BooleanField': exports.BooleanFieldMeta,
'NullBooleanField': exports.BooleanFieldMeta,
'DateTimeField': exports.DateTimeFieldMeta,
'DateField': exports.DateTimeFieldMeta,
'TimeField': exports.DateTimeFieldMeta,
'DateField': exports.DateFieldMeta,
'TimeField': exports.TimeFieldMeta,
'FileField': exports.CharFieldMeta,
'ImageField': exports.CharFieldMeta,
'ForeignKey': exports.ForeignKeyMeta
Expand Down
3 changes: 2 additions & 1 deletion lib/db/backends/mysql/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@ var drty = require('drty'),
exports.insert = function(model, callback) {
var insertSQL = new (require('./statements').Insert)(model);
dbpool.get(function(conn) {
// do the query
var q = conn.query(insertSQL.getSQL(), function(error, res) {
conn.close();
if (!error) {
Expand Down Expand Up @@ -106,6 +105,8 @@ exports.validate = function(Model, callback) {
0x02: 'smallint',
0x03: 'integer',
0x05: 'double',
0x0A: 'date',
0x0B: 'time',
0x0C: 'datetime',
0xF6: 'decimal',
0xFC: 'text',
Expand Down
1 change: 1 addition & 0 deletions lib/db/modelform.js
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@ exports.ModelForm = drty.forms.Form.extend({
}

for(var name in fields) { model[name] = this[name]; }

model.save(function(err, model) {
if (err) {
cb(err, this);
Expand Down
5 changes: 0 additions & 5 deletions lib/db/models.js
Original file line number Diff line number Diff line change
Expand Up @@ -88,11 +88,6 @@ var Model = exports.Model = drty.Class.extend({
options.label = options.verboseName;

switch(column._fieldType) {
case 'AutoField':
prop[name] = new drty.forms.IntegerField({required: false});
prop[name].widget = new drty.forms.widgets.HiddenInput();
break;

case 'IntegerField':
case 'PositiveIntegerField':
case 'SmallIntegerField':
Expand Down

0 comments on commit e8049db

Please sign in to comment.