pic.go 685 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. package model
  2. import "trading-go/common"
  3. type Pic struct {
  4. Id uint `db:"id"`
  5. Name string `db:"name"`
  6. Url string `db:"url"`
  7. }
  8. func (p *Pic) Save() error {
  9. db := common.DB
  10. sqlStr := "INSERT INTO pics(name, url) VALUES (:name, :url)"
  11. exec, err := db.NamedExec(sqlStr, p)
  12. if err != nil {
  13. return err
  14. }
  15. id, err := exec.LastInsertId()
  16. if err != nil {
  17. return err
  18. }
  19. p.Id = uint(id)
  20. return nil
  21. }
  22. func (p *Pic) GetAll() (pics []Pic, err error) {
  23. db := common.DB
  24. sqlStr := "SELECT * FROM pics"
  25. err = db.Select(&pics, sqlStr)
  26. return
  27. }
  28. func (p *Pic) Delete() error {
  29. db := common.DB
  30. sqlStr := "DELETE FROM pics WHERE id = ?"
  31. _, err := db.Exec(sqlStr)
  32. return err
  33. }