@@ -661,18 +661,31 @@ func (tb DefaultTable) GetDataFromDatabaseWithId(id string) ([]types.FormField,
661
661
if value [j ] == formList [i ].Field {
662
662
if checkInTable (columns , formList [i ].Field ) {
663
663
if formList [i ].FormType .IsSelect () {
664
- valueArr := formList [i ].ToDisplay (types.FieldModel {
664
+ valueRet := formList [i ].ToDisplay (types.FieldModel {
665
665
ID : id ,
666
666
Value : db .GetValueFromDatabaseType (formList [i ].TypeName , res [formList [i ].Field ]).String (),
667
667
Row : res ,
668
- }).([]string )
669
- for _ , v := range formList [i ].Options {
670
- if modules .InArray (valueArr , v ["value" ]) {
671
- v ["selected" ] = "selected"
672
- } else {
673
- v ["selected" ] = ""
668
+ })
669
+
670
+ if _ , ok := valueRet .(string ); ok {
671
+ for _ , v := range formList [i ].Options {
672
+ if v ["value" ] == valueRet {
673
+ v ["selected" ] = "selected"
674
+ } else {
675
+ v ["selected" ] = ""
676
+ }
677
+ }
678
+ } else {
679
+ valueArr := valueRet .([]string )
680
+ for _ , v := range formList [i ].Options {
681
+ if modules .InArray (valueArr , v ["value" ]) {
682
+ v ["selected" ] = "selected"
683
+ } else {
684
+ v ["selected" ] = ""
685
+ }
674
686
}
675
687
}
688
+
676
689
} else if formList [i ].FormType .IsRadio () {
677
690
value := formList [i ].ToDisplay (types.FieldModel {
678
691
ID : id ,
@@ -695,17 +708,28 @@ func (tb DefaultTable) GetDataFromDatabaseWithId(id string) ([]types.FormField,
695
708
}
696
709
} else {
697
710
if formList [i ].FormType .IsSelect () {
698
- valueArr := formList [i ].ToDisplay (types.FieldModel {
711
+ valueRet := formList [i ].ToDisplay (types.FieldModel {
699
712
ID : id ,
700
713
Value : "" ,
701
714
Row : res ,
702
- }).([]string )
703
-
704
- for _ , v := range formList [i ].Options {
705
- if modules .InArray (valueArr , v ["value" ]) {
706
- v ["selected" ] = "selected"
707
- } else {
708
- v ["selected" ] = ""
715
+ })
716
+
717
+ if _ , ok := valueRet .(string ); ok {
718
+ for _ , v := range formList [i ].Options {
719
+ if v ["value" ] == valueRet {
720
+ v ["selected" ] = "selected"
721
+ } else {
722
+ v ["selected" ] = ""
723
+ }
724
+ }
725
+ } else {
726
+ valueArr := valueRet .([]string )
727
+ for _ , v := range formList [i ].Options {
728
+ if modules .InArray (valueArr , v ["value" ]) {
729
+ v ["selected" ] = "selected"
730
+ } else {
731
+ v ["selected" ] = ""
732
+ }
709
733
}
710
734
}
711
735
} else if formList [i ].FormType .IsRadio () {
@@ -792,16 +816,28 @@ func (tb DefaultTable) GetDataFromDatabaseWithId(id string) ([]types.FormField,
792
816
}
793
817
} else {
794
818
if formList [i ].FormType .IsSelect () {
795
- valueArr := formList [i ].ToDisplay (types.FieldModel {
819
+ valueRet := formList [i ].ToDisplay (types.FieldModel {
796
820
ID : id ,
797
821
Value : "" ,
798
822
Row : res ,
799
- }).([]string )
800
- for _ , v := range formList [i ].Options {
801
- if modules .InArray (valueArr , v ["value" ]) {
802
- v ["selected" ] = "selected"
803
- } else {
804
- v ["selected" ] = ""
823
+ })
824
+
825
+ if _ , ok := valueRet .(string ); ok {
826
+ for _ , v := range formList [i ].Options {
827
+ if v ["value" ] == valueRet {
828
+ v ["selected" ] = "selected"
829
+ } else {
830
+ v ["selected" ] = ""
831
+ }
832
+ }
833
+ } else {
834
+ valueArr := valueRet .([]string )
835
+ for _ , v := range formList [i ].Options {
836
+ if modules .InArray (valueArr , v ["value" ]) {
837
+ v ["selected" ] = "selected"
838
+ } else {
839
+ v ["selected" ] = ""
840
+ }
805
841
}
806
842
}
807
843
} else if formList [i ].FormType .IsRadio () {
0 commit comments