- Jan 2024
-
mongoosejs.com mongoosejs.com
-
Instance methods Instances of Models are documents. Documents have many of their own built-in instance methods. We may also define our own custom document instance methods. // define a schema const animalSchema = new Schema({ name: String, type: String }, { // Assign a function to the "methods" object of our animalSchema through schema options. // By following this approach, there is no need to create a separate TS type to define the type of the instance functions. methods: { findSimilarTypes(cb) { return mongoose.model('Animal').find({ type: this.type }, cb); } } }); // Or, assign a function to the "methods" object of our animalSchema animalSchema.methods.findSimilarTypes = function(cb) { return mongoose.model('Animal').find({ type: this.type }, cb); }; Now all of our animal instances have a findSimilarTypes method available to them. const Animal = mongoose.model('Animal', animalSchema); const dog = new Animal({ type: 'dog' }); dog.findSimilarTypes((err, dogs) => { console.log(dogs); // woof }); Overwriting a default mongoose document method may lead to unpredictable results. See this for more details. The example above uses the Schema.methods object directly to save an instance method. You can also use the Schema.method() helper as described here. Do not declare methods using ES6 arrow functions (=>). Arrow functions explicitly prevent binding this, so your method will not have access to the document and the above examples will not work.
Certainly! Let's break down the provided code snippets:
1. What is it and why is it used?
In Mongoose, a schema is a blueprint for defining the structure of documents within a collection. When you define a schema, you can also attach methods to it. These methods become instance methods, meaning they are available on the individual documents (instances) created from that schema.
Instance methods are useful for encapsulating functionality related to a specific document or model instance. They allow you to define custom behavior that can be executed on a specific document. In the given example, the
findSimilarTypes
method is added to instances of theAnimal
model, making it easy to find other animals of the same type.2. Syntax:
Using
methods
object directly in the schema options:javascript const animalSchema = new Schema( { name: String, type: String }, { methods: { findSimilarTypes(cb) { return mongoose.model('Animal').find({ type: this.type }, cb); } } } );
Using
methods
object directly in the schema:javascript animalSchema.methods.findSimilarTypes = function(cb) { return mongoose.model('Animal').find({ type: this.type }, cb); };
Using
Schema.method()
helper:javascript animalSchema.method('findSimilarTypes', function(cb) { return mongoose.model('Animal').find({ type: this.type }, cb); });
3. Explanation in Simple Words with Examples:
Why it's Used:
Imagine you have a collection of animals in your database, and you want to find other animals of the same type. Instead of writing the same logic repeatedly, you can define a method that can be called on each animal instance to find similar types. This helps in keeping your code DRY (Don't Repeat Yourself) and makes it easier to maintain.
Example:
```javascript const mongoose = require('mongoose'); const { Schema } = mongoose;
// Define a schema with a custom instance method const animalSchema = new Schema({ name: String, type: String });
// Add a custom instance method to find similar types animalSchema.methods.findSimilarTypes = function(cb) { return mongoose.model('Animal').find({ type: this.type }, cb); };
// Create the Animal model using the schema const Animal = mongoose.model('Animal', animalSchema);
// Create an instance of Animal const dog = new Animal({ type: 'dog', name: 'Buddy' });
// Use the custom method to find similar types dog.findSimilarTypes((err, similarAnimals) => { console.log(similarAnimals); }); ```
In this example,
findSimilarTypes
is a custom instance method added to theAnimal
schema. When you create an instance of theAnimal
model (e.g., a dog), you can then callfindSimilarTypes
on that instance to find other animals with the same type. The method uses thethis.type
property, which refers to the type of the current animal instance. This allows you to easily reuse the logic for finding similar types across different instances of theAnimal
model.
Tags
Annotators
URL
-
- Jul 2023
-
-
- Title
- Big Oil v the World Series 1 02 Doubt
- Author BBC
- Title
-
- Aug 2022
-
www.jstor.org www.jstor.org
-
- When considering the work of social reproduction in the University, I suggest we focus our attention to two interrelated and crucial sites: the reproduction of the University itself, and the reproduction of the subject (the student-self).
- Mapping social reproduction in the University uncovers the racism and patriarchy at work. As the neoliberal university seeks to market its diversity and multiculturalism, it requires those diverse bodies to do the work of reproducing the university as such.
Tags
Annotators
URL
-
- Jun 2022
-
www.jstor.org www.jstor.org
-
Referencing Intersections and Dialectics, McNally identifies in liberalism what he calls "social Newtonianism." In this theoretical framework, "things—be they entities, processes, or relations—can thus only be understood as utterly discrete atomic bits whose identities exclude the co-constituting effects of others," a critique which he applies doubly to liberalism and strains of intersectional theory. (McNally, 97) In a much less radical sense, we can understand social Newtonianism to be constitutive of the faux-progressivism of the neoliberal university, in which Contemporary DEI is an entrenched set of discourses. The production of social atomism amongst the working class is essential to ruling class ideology, and by extension managerial rationality. Managerial rationalities within the university are thus accepting of a watered-down form of intersectionality--one that leans into social Newtonianism and discourages class analysis. For this reason, among others, SRT provides resources to combat institutional discourse on race, gender and inequality.
-
One understanding of social reproduction is that it isabout two separate spaces and two separate processes of production: theeconomic and the social—often understood as the workplace and home.In this understanding, the worker produces surplus value at work andhence is part of the production of the total wealth of society. At the end ofthe workday, because the worker is “free” under capitalism, capital mustrelinquish control over the process of regeneration of the worker andhence the reproduction of the workforce. The corpus of social relationsinvolving regeneration—birth, death, social communication, and soon—is most commonly referred to in scholarly as well as policy literatureas care or social care
In the residential university, the economic and social life of the student are collapsed. In this sense, the labor of being surveilled and the production of human capital through all social processes inherent to regimes of managerial rationality, is panoptical, totalizing.
-
The volume is premised upon the understanding that “in capitalistsocieties the majority of people subsist by combining paid employmentand unpaid domestic labor to maintain themselves . . . [hence] thisversion of social reproduction analyzes the ways in which both laborsare part of the same socio-economic process.”
Part 2 aims to supplement the economic questions addressed in Part 1 to fully account for the vast unpaid and uncompensated labor that constitutes the labor process within the university. A proper analysis of labor in the university, and Contemporary DEI's role in facilitating it is to understand the socio-economic productive and reproductive forces that produce student, faculty and administrative subjectivity.
-
apitalism, however, acknowledgesproductive labor for the market as the sole form of legitimate “work,”while the tremendous amount of familial as well as communitarian workthat goes on to sustain and reproduce the worker, or more specificallyher labor power, is naturalized into nonexistence.
In the racialized and gendered capitalism that produces DEI, embodying diversity and similar forms of labor are made invisible as such.
Tags
Annotators
URL
-
- Sep 2018
-
primarydocuments.ca primarydocuments.ca
-
It appears therefore that the only alternative which now offers itself to the inhabitants of Lower Canada is a choice between dissolution pure and simple, or Confederation on one side, and representation by population on the other. And however opposed Lower Canada may be to representation by population, is there not imminent danger that it may be finally imposed upon it, if it resist all measures of reform, the object of which is to leave to the local authorities of each section the control of its own interests and institutions. We should not forget that the same authority which imposed on us the Act of Union, or which altered it without our consent, by repealing the clause which required the concurrence of two thirds of the members of both Houses in order to change the representation respecting the two sections, may again intervene to impose upon us this new change.
Tags
- Section 52 of the Constitution Act 1867
- Preamble of the Constitution Act 1867
- Section 92 of the Constitution Act 1867
- Section 91 of the Constitution Act 1867
- Section 91(1) of the Constitution Act 1867
- Section 51 of the Constitution Act 1867
- Part V of the Constitution Act 1867
- Section 92(2) of the Constitution Act 1867
Annotators
URL
-
- Feb 2016
-
faculty.humanities.uci.edu faculty.humanities.uci.edu
-
How were human beings created? • Where did they obtain their knowledge, and how did they provide for themselves?
1) Human beings were created by birth from mother and father.
2) The father passed on his offspring and that his how they gained knowledge.
-