рдореИрдВ knex рдореЗрдВ рдХреБрдЫ рдХрд╕реНрдЯрдо рдлрд╝рдВрдХреНрд╢рдВрд╕ рдЬреЛрдбрд╝рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ, рдЬрд┐рдирдХрд╛ рдореБрдЭреЗ рд╣рд░ рд╕рдордп рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдЙрдиреНрд╣реЗрдВ рдХрд╛рдо рдкрд░ рд▓рд╛рдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реЛ рд░рд╣рд╛ рд╣реИред
рд╡реЗ:
knex.selectOne
knex.selectZeroOrOne
рдкрд╣рд▓реЗ рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп, SelectOne рдПрдХ рд╕реАрдорд╛ рд▓рд╛рдЧреВ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рдПрдХ рддреНрд░реБрдЯрд┐ рдлреЗрдВрдХрддрд╛ рд╣реИ рдпрджрд┐ рдЗрд╕реЗ рдПрдХ рд╕реЗ рдЕрдзрд┐рдХ рд░рд┐рдХреЙрд░реНрдб рд╡рд╛рдкрд╕ рдорд┐рд▓рддреЗ рд╣реИрдВред рдпрд╣ рд▓реЗрдЦрдХ рдХреЛ рд╡рд┐рд╢реЗрд╖ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЛ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдЬрд▓реНрджреА рдкрдХрдбрд╝рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред
рдореИрдВрдиреЗ рдЗрд╕рдХреЗ рд╕рд╛рде рд╢реБрд░реБрдЖрдд рдХреА:
knex.client.QueryBuilder.prototype.selectOne = function (columns) {
const args = new Array(arguments.length);
for (let i = 0; i < args.length; i++) {
args[i] = arguments[i];
}
this.select.apply(this, args);
this._method = 'first';
//this.limit(1);
return this;
}
рд▓реЗрдХрд┐рди рдЬрд╛рд╣рд┐рд░ рд╣реИ рдХрд┐ рдкрд░рд┐рдгрд╛рдо рд╡рд╛рдкрд╕ рдЖрдиреЗ рдХреЗ рдмрд╛рдж рдХрд┐рддрдиреЗ рд░рд┐рдХреЙрд░реНрдб рд▓реМрдЯрд╛рдП рдЬрд╛рддреЗ рд╣реИрдВ, рдЗрд╕рдХреА рдЬрд╛рдВрдЪ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП
рдХреНрдпрд╛ рдЖрдк рдореБрдЭреЗ рд╕рд╣реА рджрд┐рд╢рд╛ рдореЗрдВ рдЗрдВрдЧрд┐рдд рдХрд░ рдкрд╛рдПрдВрдЧреЗ?
рдмрд╕ FYI рдХрд░реЗрдВ рдпрд╣ рдХреЛрдб 0.12 рдореЗрдВ рдХрд╛рдо рдирд╣реАрдВ рдХрд░реЗрдЧрд╛, рдЖрдкрдХреЛ рдЙрд╕ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реАрдзреЗ knex/lib/query/builder
рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред
1.0 рдХреЗ рд▓рд┐рдП рдореИрдВ рдХреНрд╡реЗрд░реА рдмрд┐рд▓реНрдбрд░ рд╢реНрд░реГрдВрдЦрд▓рд╛ рдХреЛ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдорд╛рдирдХ рддрд░реАрдХреЗ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛рдЙрдВрдЧрд╛ рдЬреИрд╕реЗ рдЖрдк рдКрдкрд░ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рдФрд░ "рд╣реБрдХ" рдХреЗ рдЕрддрд┐рд░рд┐рдХреНрдд, рдЖрдк рдЖрд╕рд╛рдиреА рд╕реЗ рдкреЛрд╕реНрдЯ-рдкрд░рд┐рдгрд╛рдо рдЯреНрд░рд╛рдВрд╕рдлреЙрд░реНрдо рдХреЛ рдЖрд╕рд╛рдиреА рд╕реЗ рд╕реЗрдЯ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдВрдЧреЗред
@tgriesser рдореИрдВ рдХреБрдЫ рд╕рдордп рдХреЗ рд▓рд┐рдП рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдФрд░ QueryBuilder
рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рджрд┐рдпрд╛ рд╣реИред рдХреНрд╡реЗрд░реА рдмрд┐рд▓реНрдбрд░ рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рд╣реЛрдирд╛ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ред
рдореИрдВ
@tgriesser - рд╣рдо 1.0 рд╕реЗ рдХрд┐рддрдиреА рджреВрд░ рд╣реИрдВ?
рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА
@tgriesser рдореИрдВ рдХреБрдЫ рд╕рдордп рдХреЗ рд▓рд┐рдП рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдФрд░
QueryBuilder
рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рджрд┐рдпрд╛ рд╣реИред рдХреНрд╡реЗрд░реА рдмрд┐рд▓реНрдбрд░ рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рд╣реЛрдирд╛ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛редрдореИрдВ