Heim > Backend-Entwicklung > Golang > go-carbon1.2.0 ist veröffentlicht! Verbessern und optimieren Sie die Multi-Szenario-Unterstützung für ORM

go-carbon1.2.0 ist veröffentlicht! Verbessern und optimieren Sie die Multi-Szenario-Unterstützung für ORM

藏色散人
Freigeben: 2020-10-13 10:30:47
nach vorne
2240 Leute haben es durchsucht

eingeführt, um die Go-Carbon 1.2.0-Version vorzustellen. Ich hoffe, es wird den Freunden in Not hilfreich sein!

carbon ist eine leichte, semantische, entwicklerfreundliche Golang-Zeitverarbeitungsbibliothek, die Kettenaufrufe und gängige ORMs wie gorm und xrom unterstützt.

go-carbon1.2.0 ist veröffentlicht! Verbessern und optimieren Sie die Multi-Szenario-Unterstützung für ORMWenn Sie es für gut halten, geben Sie ihm bitte einen Stern

github:github .com/golang-module/carbon

gitee:gitee.com/go-package/carbon

Installation und Verwendung

// 使用github库
go get -u github.com/golang-module/carbon

import (
 "github.com/golang-module/carbon")

// 使用gitee库
go get -u gitee.com/go-package/carbon

import (
 "gitee.com/go-package/carbon")
Nach dem Login kopieren

DatenbankunterstützungAngenommen, die Datentabelle enthält Benutzer und die Felder haben die ID (int )

Felder des Ausgabemodells
type UserModel struct {
 ID  int64  `json:"id"` Name string `json:"name"` Age int `json:"age"` Birthday carbon.Carbon `json:"birthday"` CreatedAt carbon.ToDateTimeString `json:"created_at"` DeletedAt carbon.ToTimestamp `json:"deleted_at"` GraduatedAt carbon.ToDateString `json:"graduated_at"` UpdatedAt carbon.ToTimeString `json:"updated_at"`}
Nach dem Login kopieren

JSON-Ausgabemodell

user := UserModel {
 Name: "勾国印", Age: 18, Birthday: carbon.Now().SubYears(18), CreatedAt: carbon.ToDateTimeString{carbon.Now()}, DeletedAt: carbon.ToTimestamp{carbon.Parse("2020-08-05 13:14:15")}, GraduatedAt: carbon.ToDateString{carbon.Parse("2012-09-09")}, UpdatedAt: carbon.ToTimeString{carbon.Now()},}
Nach dem Login kopieren
Update-Protokoll
Perfekte Unit-Tests, Codeabdeckung 100 %
Perfekte und optimierte Multi-Szenario-Unterstützung für ORM
Neue englische Version der README.MD-Dokumentation
Unify Ausnahmebehandlung
Vereinheitlichen Sie die Benennungsregeln für Ausgabefunktionen, ändern Sie Format() in ToFormatString()

Fügen Sie die Methode CreateFromGoTime(t time.Time) hinzu, um Carbon-Instanzen aus nativer Zeit zu erstellen.Time
  • Optimieren Sie die Code-Organisationsstruktur, sie ist nicht vererbbar Die endgültige Methode ist in der final.go-Datei vereinheitlicht.
  • Verzichten Sie auf die Initialisierungsfunktion New(), die direkt ohne Initialisierung verwendet werden kann. )-Methode analysiert eine Dauerzeichenfolge (relativ zum heutigen Tag) und unterstützt positive und negative ganze Zahlen/Floats und Symbole ns (Nanosekunden), us (Mikrosekunden), ms (Millisekunden), s (Sekunden), m (Minuten), h (Stunden).
  • Methoden NextYears(), NextYear(), PreYears(), PreYear() hinzugefügt, um das Phänomen sich überschneidender Monate beim Addieren/Subtrahieren eines bestimmten Jahres zu verhindern
  • NextMonths(), NextMonth(), PreMonths(), PreMonth( hinzugefügt )-Methode, um das Phänomen der Überschneidung von Monaten nach dem Addieren/Subtrahieren des angegebenen Monats zu verhindern.
  • New DaysInYear()-Methode, um die Gesamtzahl der Tage in diesem Jahr zu erhalten.
  • New DaysInMonth()-Methode, um die Gesamtzahl der Tage in diesem Monat zu erhalten
  • Methode „MonthOfYear()“ hinzugefügt, um den Tag des Jahres zu erhalten.
  • Methode „DayOfYear()“ hinzugefügt, um den Tag des Jahres zu erhalten.
  • Methode „DayOfMonth()“ hinzugefügt, um den Tag des Monats zu erhalten Holen Sie sich den Tag der Woche
  • WeekOfYear()-Methode hinzugefügt, um die Woche des Jahres zu erhalten
  • WeekOfMonth()-Methode hinzugefügt, um die Woche des Monats zu erhalten
  • IsZero()-Methode hinzugefügt, um zu bestimmen, ob es sich um eine Nullwertzeit handelt
  • IsFuture()-Methode hinzugefügt, um zu bestimmen, ob es sich um eine zukünftige Zeit handelt.
  • IsPast()-Methode hinzugefügt, um zu bestimmen, ob es sich um eine vergangene Zeit handelt.
  • IsNow()-Methode hinzugefügt, um zu bestimmen, ob es sich um eine aktuelle Zeit handelt

Das obige ist der detaillierte Inhalt vongo-carbon1.2.0 ist veröffentlicht! Verbessern und optimieren Sie die Multi-Szenario-Unterstützung für ORM. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:learnku.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage