Skip to content
Toggle navigation
Projects
Groups
Snippets
Help
public
/
sequelize
This project
Loading...
Sign in
Toggle navigation
Go to a project
Project
Repository
Issues
0
Merge Requests
0
Pipelines
Wiki
Snippets
Settings
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
不要怂,就是干,撸起袖子干!
Commit f1af030a
authored
May 04, 2011
by
Sascha Depold
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fixed method passing example
1 parent
15cb762a
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
27 additions
and
28 deletions
examples/DefaultValues/app.js → examples/default-values/app.js
examples/MethodPassing/app.js → examples/method-passing/app.js
examples/
DefaultV
alues/app.js
→
examples/
default-v
alues/app.js
View file @
f1af030
File moved
examples/
MethodP
assing/app.js
→
examples/
method-p
assing/app.js
View file @
f1af030
var
Sequelize
=
require
(
__dirname
+
"/../../lib/sequelize/Sequelize"
).
Sequelize
,
/*
sequelize
=
new
Sequelize
(
"sequelize_test"
,
"test"
,
"test"
,
{
disableLogging
:
true
})
Title: Defining class and instance methods
This example shows the usage of the classMethods and instanceMethods option for Models.
*/
var
Sequelize
=
require
(
__dirname
+
"/../../index"
)
,
config
=
require
(
__dirname
+
"/../../test/config"
)
,
sequelize
=
new
Sequelize
(
config
.
database
,
config
.
username
,
config
.
password
,
{
logging
:
false
})
// model definition
// model definition
var
Task
=
sequelize
.
define
(
"Task"
,
{
var
Task
=
sequelize
.
define
(
"Task"
,
{
...
@@ -9,55 +16,47 @@ var Task = sequelize.define("Task", {
...
@@ -9,55 +16,47 @@ var Task = sequelize.define("Task", {
},
{
},
{
classMethods
:
{
classMethods
:
{
setImportance
:
function
(
newImportance
,
callback
)
{
setImportance
:
function
(
newImportance
,
callback
)
{
Task
.
findAll
(
function
(
allTasks
)
{
Task
.
findAll
(
).
on
(
'success'
,
function
(
allTasks
)
{
var
queries
=
[]
var
chainer
=
new
Sequelize
.
Utils
.
QueryChainer
allTasks
.
forEach
(
function
(
task
)
{
allTasks
.
forEach
(
function
(
task
)
{
queries
.
push
({
updateAttributes
:
task
,
params
:
[{
importance
:
newImportance
}]})
chainer
.
add
(
task
.
updateAttributes
({
importance
:
newImportance
}))
})
chainer
.
run
().
on
(
'success'
,
function
()
{
callback
&&
callback
()
})
})
Sequelize
.
chainQueries
(
queries
,
callback
)
})
})
}
}
},
},
instanceMethods
:
{
instanceMethods
:
{
hasDeadlinePassed
:
function
()
{
passedDeadline
:
function
()
{
return
(
this
.
deadline
<
new
Date
())
return
(
this
.
deadline
<
new
Date
())
}
}
}
}
})
})
// instance creation
// instance creation
var
task1
=
new
Task
({
var
task1
=
Task
.
build
({
name
:
'Choose a nice MySQL connector'
,
name
:
'Choose a nice MySQL connector'
,
deadline
:
new
Date
(
Date
.
parse
(
"Jul 8, 2100"
)),
deadline
:
new
Date
(
Date
.
parse
(
"Jul 8, 2100"
)),
importance
:
10
importance
:
10
}),
}),
task2
=
new
Task
({
task2
=
Task
.
build
({
name
:
'Build the rest'
,
name
:
'Build the rest'
,
deadline
:
new
Date
(
Date
.
parse
(
"Jul 8, 2005"
)),
deadline
:
new
Date
(
Date
.
parse
(
"Jul 8, 2005"
)),
importance
:
90
importance
:
90
})
})
Task
.
drop
(
function
(
table
,
error
)
{
Task
.
sync
({
force
:
true
}).
on
(
'success'
,
function
(
)
{
if
(
error
)
return
Sequelize
.
Helper
.
log
(
error
)
new
Sequelize
.
Utils
.
QueryChainer
([
task1
.
save
(),
task2
.
save
()]).
run
().
on
(
'success'
,
function
()
{
console
.
log
(
"should be false: "
+
task1
.
passedDeadline
())
Task
.
sync
(
function
(
table
,
error
)
{
console
.
log
(
"should be true: "
+
task2
.
passedDeadline
())
if
(
error
)
return
Sequelize
.
Helper
.
log
(
error
)
console
.
log
(
"should be 10: "
+
task1
.
importance
)
task1
.
save
(
function
()
{
Task
.
setImportance
(
30
,
function
()
{
task2
.
save
(
function
()
{
Task
.
findAll
().
on
(
'success'
,
function
(
tasks
)
{
tasks
.
forEach
(
function
(
task
)
{
Sequelize
.
Helper
.
log
(
"should be false: "
+
task1
.
hasDeadlinePassed
())
console
.
log
(
"should be 30: "
+
task
.
importance
)
Sequelize
.
Helper
.
log
(
"should be true: "
+
task2
.
hasDeadlinePassed
())
Sequelize
.
Helper
.
log
(
"should be 10: "
+
task1
.
importance
)
Task
.
setImportance
(
30
,
function
()
{
Task
.
findAll
(
function
(
tasks
)
{
tasks
.
forEach
(
function
(
task
)
{
Sequelize
.
Helper
.
log
(
"should be 30: "
+
task
.
importance
)
})
})
})
})
})
})
})
})
})
})
...
...
Write
Preview
Markdown
is supported
Attach a file
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to post a comment