Search Options

Display Count
Sort
Preferred Language
Advanced Search

Results 1 - 10 of 10 for Many2Many (0.08 seconds)

The search processing time has exceeded the limit. The displayed results may be partial.

  1. schema/relationship_test.go

    		Name: "Profiles", Type: schema.Many2Many, Schema: "User", FieldSchema: "Profile",
    		JoinTable: JoinTable{Name: "user_profiles", Table: "user_profiles"},
    		References: []Reference{
    			{"Refer", "User", "UserReferID", "user_profiles", "", true},
    			{"UserRefer", "Profile", "ProfileRefer", "user_profiles", "", false},
    		},
    	}, Relation{
    		Name: "Profiles2", Type: schema.Many2Many, Schema: "User", FieldSchema: "Profile",
    Created: Sun Dec 28 09:35:17 GMT 2025
    - Last Modified: Mon Aug 18 11:44:52 GMT 2025
    - 26.5K bytes
    - Click Count (0)
  2. association.go

    				} else {
    					association.Error = tx.Where(clause.IN{Column: column, Values: values}).UpdateColumns(updateMap).Error
    				}
    			}
    		case schema.Many2Many:
    			var (
    				primaryFields, relPrimaryFields     []*schema.Field
    				joinPrimaryKeys, joinRelPrimaryKeys []string
    				modelValue                          = reflect.New(rel.JoinTable.ModelType).Interface()
    Created: Sun Dec 28 09:35:17 GMT 2025
    - Last Modified: Sun Oct 26 12:09:12 GMT 2025
    - 23.6K bytes
    - Click Count (0)
  3. tests/multi_primary_keys_test.go

    		t.Fatalf("Should find 3 tags")
    	}
    
    	var blog1 Blog
    	DB.Preload("Tags").Find(&blog1)
    	if !compareTags(blog1.Tags, []string{"tag1", "tag2", "tag3"}) {
    		t.Fatalf("Preload many2many relations")
    	}
    
    	// Replace
    	tag5 := &Tag{Locale: "ZH", Value: "tag5"}
    	tag6 := &Tag{Locale: "ZH", Value: "tag6"}
    	DB.Model(&blog).Association("Tags").Replace(tag5, tag6)
    	var tags2 []Tag
    Created: Sun Dec 28 09:35:17 GMT 2025
    - Last Modified: Mon Jul 21 02:46:58 GMT 2025
    - 13.1K bytes
    - Click Count (0)
  4. callbacks/preload.go

    	fieldValues := make([]interface{}, len(relForeignFields))
    
    	// clean up old values before preloading
    	switch reflectValue.Kind() {
    	case reflect.Struct:
    		switch rel.Type {
    		case schema.HasMany, schema.Many2Many:
    			tx.AddError(rel.Field.Set(tx.Statement.Context, reflectValue, reflect.MakeSlice(rel.Field.IndirectFieldType, 0, 10).Interface()))
    		default:
    Created: Sun Dec 28 09:35:17 GMT 2025
    - Last Modified: Sun May 25 07:40:40 GMT 2025
    - 11.7K bytes
    - Click Count (0)
  5. schema/schema_test.go

    		},
    		{
    			Name: "Team", Type: schema.HasMany, Schema: "User", FieldSchema: "User",
    			References: []Reference{{"ID", "User", "ManagerID", "User", "", true}},
    		},
    		{
    			Name: "Languages", Type: schema.Many2Many, Schema: "User", FieldSchema: "Language",
    			JoinTable: JoinTable{Name: "UserSpeak", Table: "user_speaks", Fields: []schema.Field{
    				{
    Created: Sun Dec 28 09:35:17 GMT 2025
    - Last Modified: Thu Aug 28 02:57:17 GMT 2025
    - 13.3K bytes
    - Click Count (0)
  6. callbacks/associations.go

    					}
    
    					saveAssociations(db, rel, elems, selectColumns, restricted, assignmentColumns)
    				}
    			}
    
    			// Save Many2Many associations
    			for _, rel := range db.Statement.Schema.Relationships.Many2Many {
    				if v, ok := selectColumns[rel.Name]; (ok && !v) || (!ok && restricted) {
    					continue
    				}
    
    				fieldType := rel.Field.IndirectFieldType.Elem()
    Created: Sun Dec 28 09:35:17 GMT 2025
    - Last Modified: Thu Feb 13 06:16:26 GMT 2025
    - 14.4K bytes
    - Click Count (0)
  7. tests/associations_test.go

    	if err != nil {
    		t.Fatalf("Failed to find, got error: %v", err)
    	}
    
    	AssertEqual(t, result, user)
    }
    
    // Ensure Association.Append/Replace supports map for many2many
    func TestAssociationMany2ManyAppendMap(t *testing.T) {
    	user := *GetUser("assoc_m2m_append_map", Config{})
    	if err := DB.Create(&user).Error; err != nil {
    		t.Fatalf("create user: %v", err)
    	}
    
    Created: Sun Dec 28 09:35:17 GMT 2025
    - Last Modified: Fri Sep 12 04:33:27 GMT 2025
    - 13.3K bytes
    - Click Count (0)
  8. generics.go

    				} else {
    					db.AddError(fmt.Errorf("relation %s not found", association))
    					return nil
    				}
    			}
    
    			if q.limitPerRecord > 0 {
    				if relation.JoinTable != nil {
    					tx.AddError(fmt.Errorf("many2many relation %s don't support LimitPerRecord", association))
    					return tx
    				}
    
    				refColumns := []clause.Column{}
    				for _, rel := range relation.References {
    					if rel.OwnPrimaryKey {
    Created: Sun Dec 28 09:35:17 GMT 2025
    - Last Modified: Sun Nov 02 14:09:18 GMT 2025
    - 25.9K bytes
    - Click Count (0)
  9. migrator/migrator.go

    		return &uni, stmt.Table
    	}
    
    	getTable := func(rel *schema.Relationship) string {
    		switch rel.Type {
    		case schema.HasOne, schema.HasMany:
    			return rel.FieldSchema.Table
    		case schema.Many2Many:
    			return rel.JoinTable.Table
    		}
    		return stmt.Table
    	}
    
    	for _, rel := range stmt.Schema.Relationships.Relations {
    		if constraint := rel.ParseConstraint(); constraint != nil && constraint.Name == name {
    Created: Sun Dec 28 09:35:17 GMT 2025
    - Last Modified: Sun Oct 26 12:31:09 GMT 2025
    - 29.7K bytes
    - Click Count (0)
  10. tests/migrate_test.go

    		{"accounts", "fk_users_account"},
    		{"users", "fk_users_team"},
    		{"users", "fk_users_company"},
    	} {
    		if !DB.Migrator().HasConstraint(indexes[0], indexes[1]) {
    			t.Fatalf("Failed to find index for many2many for %v %v", indexes[0], indexes[1])
    		}
    	}
    }
    
    func TestAutoMigrateInt8PGAndGaussDB(t *testing.T) {
    	if DB.Dialector.Name() != "postgres" && DB.Dialector.Name() != "gaussdb" {
    		return
    	}
    
    Created: Sun Dec 28 09:35:17 GMT 2025
    - Last Modified: Wed Aug 20 04:51:17 GMT 2025
    - 65.2K bytes
    - Click Count (0)
Back to Top