@@ -200,42 +200,43 @@ public function belongsTo($related, $foreignKey = null, $otherKey = null, $relat
200
200
return new BelongsTo ($ query , $ this , $ foreignKey , $ otherKey , $ relation );
201
201
}
202
202
203
- /**
204
- * Define a many-to-many relationship.
205
- *
206
- * @param string $related
207
- * @param string $table
208
- * @param string $foreignKey
209
- * @param string $otherKey
210
- * @return \Illuminate\Database\Eloquent\Relations\BelongsToMany
211
- */
212
- public function belongsToMany ($ related , $ collection = null , $ foreignKey = null , $ otherKey = null )
213
- {
214
- $ caller = $ this ->getBelongsToManyCaller ();
215
-
216
- // First, we'll need to determine the foreign key and "other key" for the
217
- // relationship. Once we have determined the keys we'll make the query
218
- // instances as well as the relationship instances we need for this.
219
- $ foreignKey = $ foreignKey ?: $ this ->getForeignKey () . 's ' ;
220
-
221
- $ instance = new $ related ;
222
-
223
- $ otherKey = $ otherKey ?: $ instance ->getForeignKey () . 's ' ;
224
- // If no table name was provided, we can guess it by concatenating the two
225
- // models using underscores in alphabetical order. The two model names
226
- // are transformed to snake case from their default CamelCase also.
227
- if (is_null ($ collection ))
228
- {
229
- $ collection = snake_case (str_plural (class_basename ($ related )));
230
- }
231
-
232
- // Now we're ready to create a new query builder for the related model and
233
- // the relationship instances for the relation. The relations will set
234
- // appropriate query constraint and entirely manages the hydrations.
235
- $ query = $ instance ->newQuery ();
236
-
237
- return new BelongsToMany ($ query , $ this , $ collection , $ foreignKey , $ otherKey , $ caller ['function ' ]);
238
- }
203
+ /**
204
+ * Define a many-to-many relationship.
205
+ *
206
+ * @param string $related
207
+ * @param string $table
208
+ * @param string $foreignKey
209
+ * @param string $otherKey
210
+ * @return \Illuminate\Database\Eloquent\Relations\BelongsToMany
211
+ */
212
+ public function belongsToMany ($ related , $ collection = null , $ foreignKey = null , $ otherKey = null )
213
+ {
214
+ $ caller = $ this ->getBelongsToManyCaller ();
215
+
216
+ // First, we'll need to determine the foreign key and "other key" for the
217
+ // relationship. Once we have determined the keys we'll make the query
218
+ // instances as well as the relationship instances we need for this.
219
+ $ foreignKey = $ foreignKey ?: $ this ->getForeignKey () . 's ' ;
220
+
221
+ $ instance = new $ related ;
222
+
223
+ $ otherKey = $ otherKey ?: $ instance ->getForeignKey () . 's ' ;
224
+
225
+ // If no table name was provided, we can guess it by concatenating the two
226
+ // models using underscores in alphabetical order. The two model names
227
+ // are transformed to snake case from their default CamelCase also.
228
+ if (is_null ($ collection ))
229
+ {
230
+ $ collection = $ instance ->getTable ();
231
+ }
232
+
233
+ // Now we're ready to create a new query builder for the related model and
234
+ // the relationship instances for the relation. The relations will set
235
+ // appropriate query constraint and entirely manages the hydrations.
236
+ $ query = $ instance ->newQuery ();
237
+
238
+ return new BelongsToMany ($ query , $ this , $ collection , $ foreignKey , $ otherKey , $ caller ['function ' ]);
239
+ }
239
240
240
241
/**
241
242
* Get a new query builder instance for the connection.
@@ -312,4 +313,4 @@ public function __call($method, $parameters)
312
313
return parent ::__call ($ method , $ parameters );
313
314
}
314
315
315
- }
316
+ }
0 commit comments