Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Menu
Open sidebar
chenhan wang
pastebin
Commits
d1ae0183
Commit
d1ae0183
authored
Jan 15, 2023
by
chenhan wang
Browse files
数据库部分修改
parent
fd162b81
Changes
2
Hide whitespace changes
Inline
Side-by-side
backend/model/init.go
View file @
d1ae0183
...
@@ -3,7 +3,7 @@ package model
...
@@ -3,7 +3,7 @@ package model
import
(
import
(
//"fmt"
//"fmt"
"time"
"time"
"math/rand"
//
"math/rand"
"github.com/sirupsen/logrus"
"github.com/sirupsen/logrus"
"github.com/spf13/viper"
"github.com/spf13/viper"
...
@@ -26,7 +26,7 @@ func Init() {
...
@@ -26,7 +26,7 @@ func Init() {
if
err
!=
nil
{
if
err
!=
nil
{
logrus
.
Fatal
(
err
)
logrus
.
Fatal
(
err
)
}
}
err
=
DB
.
AutoMigrate
(
&
Url
{},
&
Sid
{})
err
=
DB
.
AutoMigrate
(
&
Sid
{},
&
Url
{})
if
err
!=
nil
{
if
err
!=
nil
{
logrus
.
Fatal
(
err
)
logrus
.
Fatal
(
err
)
}
}
...
@@ -96,23 +96,25 @@ func Checkt(_Route string) {
...
@@ -96,23 +96,25 @@ func Checkt(_Route string) {
//查找sessionid和url是否关联
//查找sessionid和url是否关联
func
Find
(
sid
string
,
_url
string
)
bool
{
func
Find
(
sid
string
,
_url
string
)
bool
{
var
url
Url
var
s
Sid
err1
:=
DB
.
First
(
&
url
,
"Url1
= ?"
,
_url
)
.
Error
err1
:=
DB
.
First
(
&
s
,
"S
= ?"
,
sid
)
.
Error
//fmt.Println(url.Url1,url.ID,"\n")
//fmt.Println(url.Url1,url.ID,"\n")
if
err1
!=
nil
{
if
err1
!=
nil
{
return
false
return
false
}
}
var
sid1
Sid
var
Urls
[]
Url
DB
.
Model
(
&
url
)
.
Where
(
"S = ?"
,
sid
)
.
Association
(
"User1"
)
.
Find
(
&
sid1
)
DB
.
Model
(
&
s
)
.
Association
(
"Url1"
)
.
Find
(
&
Urls
)
if
sid1
.
UrlID
==
0
{
for
_
,
value
:=
range
Urls
{
return
false
if
value
.
Url1
==
_url
{
return
true
}
}
}
return
tru
e
return
fals
e
}
}
var
letters
=
[]
rune
(
"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ123456789"
)
var
letters
=
[]
rune
(
"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ123456789"
)
/
/
随机生成字符串
/
*//*
随机生成字符串
func randStr(n int) string {
func randStr(n int) string {
rand.Seed(time.Now().Unix())
rand.Seed(time.Now().Unix())
b := make([]rune, n)
b := make([]rune, n)
...
@@ -120,11 +122,11 @@ func randStr(n int) string {
...
@@ -120,11 +122,11 @@ func randStr(n int) string {
b[i] = letters[rand.Intn(len(letters))]
b[i] = letters[rand.Intn(len(letters))]
}
}
return string(b)
return string(b)
}
}
*/
//新建用户
//新建用户
func
Createuser
(
_User
Users
)
{
func
Createuser
(
_User
Users
)
{
_User
.
SessionId
=
randStr
(
8
)
//
_User.SessionId=randStr(8)
DB
.
Create
(
&
_User
)
DB
.
Create
(
&
_User
)
}
}
...
@@ -134,17 +136,19 @@ func Createlink(sid string , _passwd string , _url string) bool {
...
@@ -134,17 +136,19 @@ func Createlink(sid string , _passwd string , _url string) bool {
DB
.
First
(
&
p
,
"Url1 = ?"
,
_url
)
DB
.
First
(
&
p
,
"Url1 = ?"
,
_url
)
if
p
.
Passwd
==
_passwd
{
if
p
.
Passwd
==
_passwd
{
var
p1
Sid
var
p1
Sid
var
p2
Url
err
:=
DB
.
First
(
&
p1
,
"S = ?"
,
sid
)
.
Error
p1
.
S
=
sid
if
err
!=
nil
{
err
:=
DB
.
First
(
&
p2
,
"Url1 = ?"
,
_url
)
.
Error
sid1
:=
Sid
{
// fmt.Println("yes ",err)
S
:
sid
,
if
err
!=
nil
{
Url1
:
[]
Url
{
//fmt.Println("yes ")
{
Url1
:
_url
},
p2
.
Url1
=
_url
},
DB
.
Create
(
&
p2
)
}
}
DB
.
Create
(
&
sid1
)
DB
.
Model
(
&
p2
)
.
Association
(
"User1"
)
.
Append
(
&
p1
)
}
else
{
return
true
DB
.
Model
(
&
p1
)
.
Association
(
"Url1"
)
.
Append
(
&
Url
{
Url1
:
_url
})
}
return
true
}
}
return
false
return
false
}
}
backend/model/model.go
View file @
d1ae0183
...
@@ -17,16 +17,16 @@ type Content struct {
...
@@ -17,16 +17,16 @@ type Content struct {
Url1
string
Url1
string
}
}
type
Url
struct
{
type
Sid
struct
{
gorm
.
Model
gorm
.
Model
Url1
string
S
string
U
se
r1
[]
Sid
Ur
l
1
[]
Url
`gorm:"many2many:sid_urls;"`
}
}
type
Sid
struct
type
Url
struct
{
{
S
string
gorm
.
Model
Url
ID
u
in
t
Url
1
str
in
g
}
}
type
Users
struct
{
type
Users
struct
{
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment