Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

FLGO-45 Fix json fields #46

Merged
merged 3 commits into from
Jul 1, 2019
Merged
Show file tree
Hide file tree
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 5 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# Reamde
На данный момент репозиторий содержит код API для Фантлаба, написанный на Go. В состоянии активной разработки.

# Порядок работы
## Порядок работы
- Завести issue с описанием задачи/бага
- Создать у себя ветку FLGO-{#issue}
- Написать код
Expand All @@ -11,10 +11,9 @@
- ...
- PROFIT

# Protobuf
## Protobuf

```
cd protobuf

protoc --go_out=generated schema/*.proto
```console
$ cd protobuf/
$ protoc --go_out=generated schema/*.proto
```
3 changes: 2 additions & 1 deletion modules/authapi/api.go
Original file line number Diff line number Diff line change
@@ -1,10 +1,11 @@
package authapi

import (
"net/http"

"fantlab/protobuf/generated/fantlab/pb"
"fantlab/shared"
"fantlab/utils"
"net/http"

"github.com/gin-gonic/gin"
"github.com/segmentio/ksuid"
Expand Down
18 changes: 9 additions & 9 deletions modules/blogsapi/datacontroller.go
Original file line number Diff line number Diff line change
Expand Up @@ -11,12 +11,12 @@ func getCommunities(dbCommunities []dbCommunity) *pb.Blog_CommunitiesResponse {

for _, dbCommunity := range dbCommunities {
community := &pb.Blog_Community{
Id: dbCommunity.BlogId,
Title: dbCommunity.Name,
CommunityDescription: dbCommunity.Description,
Id: dbCommunity.BlogId,
Title: dbCommunity.Name,
Description: dbCommunity.Description,
Stats: &pb.Blog_Community_Stats{
ArticlesCount: dbCommunity.TopicsCount,
SubscribersCount: dbCommunity.SubscriberCount,
ArticleCount: dbCommunity.TopicsCount,
SubscriberCount: dbCommunity.SubscriberCount,
},
LastArticle: &pb.Blog_LastArticle{
Id: dbCommunity.LastTopicId,
Expand Down Expand Up @@ -56,8 +56,8 @@ func getBlogs(dbBlogs []dbBlog) *pb.Blog_BlogsResponse {
},
IsClosed: dbBlog.IsClose,
Stats: &pb.Blog_Blog_Stats{
ArticlesCount: dbBlog.TopicsCount,
SubscribersCount: dbBlog.SubscriberCount,
ArticleCount: dbBlog.TopicsCount,
SubscriberCount: dbBlog.SubscriberCount,
},
LastArticle: &pb.Blog_LastArticle{
Id: dbBlog.LastTopicId,
Expand All @@ -81,9 +81,9 @@ func getBlogArticles(dbBlogTopics []dbBlogTopic, urlFormatter utils.UrlFormatter
for _, dbBlogTopic := range dbBlogTopics {
var gender pb.Gender
if dbBlogTopic.Sex == 0 {
gender = pb.Gender_FEMALE
gender = pb.Gender_female
} else {
gender = pb.Gender_MALE
gender = pb.Gender_male
}

avatar := urlFormatter.GetAvatarUrl(dbBlogTopic.UserId, uint32(dbBlogTopic.PhotoNumber))
Expand Down
20 changes: 10 additions & 10 deletions modules/forumapi/datacontroller.go
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ func getForumBlocks(dbForums []dbForum, dbModerators map[uint32][]dbModerator) *
for _, dbForum := range dbForums {
if dbForum.ForumBlockID != currentForumBlockID {
forumBlock := pb.Forum_ForumBlock{
Id: dbForum.ForumBlockID,
XXX_Id: dbForum.ForumBlockID,
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

типа эта айдишка не должна светиться?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ага. Параметр технический, раньше вырезать его из json-а было очень просто, теперь приходится костыли городить.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

просто, если он не секретный, то может хрен с ним, пускай будет?)

Copy link
Contributor Author

@kenrube kenrube Jun 29, 2019

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ок. Однако, надобность в аналоге json:"-" может возникнуть и в другом месте, мы просто скрываем проблему.
golang/protobuf#52 - Open

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

протобаф планируется использовать только для отдачи клиентам (пока что - дальше хз что будет) и при необходимости можно создавать внутренние модели для конвертации и уже из них создавать протобуфные - например если будет сложный алгоритм преобразования дбшных моделей, иногда эффективней потратить больше памяти для промежуточных моделек. В таком случае не понадобится модификация генератора протомоделек) Но вообще не думаю что будет что-то настолько сложное что понадобится извращаться. ИМХО :)

Title: dbForum.ForumBlockName,
Forums: []*pb.Forum_Forum{},
}
Expand All @@ -24,7 +24,7 @@ func getForumBlocks(dbForums []dbForum, dbModerators map[uint32][]dbModerator) *

for _, dbForum := range dbForums {
for index := range forumBlocks {
if dbForum.ForumBlockID == forumBlocks[index].GetId() {
if dbForum.ForumBlockID == forumBlocks[index].GetXXX_Id() {
var moderators []*pb.Forum_UserLink

for _, dbModerator := range dbModerators[dbForum.ForumID] {
Expand All @@ -36,10 +36,10 @@ func getForumBlocks(dbForums []dbForum, dbModerators map[uint32][]dbModerator) *
}

forum := pb.Forum_Forum{
Id: dbForum.ForumID,
Title: dbForum.Name,
ForumDescription: dbForum.Description,
Moderators: moderators,
Id: dbForum.ForumID,
Title: dbForum.Name,
Description: dbForum.Description,
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

а мы можем description по другому назвать? :) с type и description есть проблемки в свифте

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Придумаю

Moderators: moderators,
Stats: &pb.Forum_Forum_Stats{
TopicCount: dbForum.TopicCount,
MessageCount: dbForum.MessageCount,
Expand Down Expand Up @@ -77,9 +77,9 @@ func getForumTopics(dbTopics []dbForumTopic) *pb.Forum_ForumTopicsResponse {
for _, dbTopic := range dbTopics {
var topicType pb.Forum_Topic_Type
if dbTopic.TopicTypeID == 2 {
topicType = pb.Forum_Topic_POLL
topicType = pb.Forum_Topic_poll
} else {
topicType = pb.Forum_Topic_TOPIC
topicType = pb.Forum_Topic_topic
}

topic := &pb.Forum_Topic{
Expand Down Expand Up @@ -130,9 +130,9 @@ func getTopicMessages(dbMessages []dbForumMessage, urlFormatter utils.UrlFormatt

var gender pb.Gender
if dbMessage.Sex == 0 {
gender = pb.Gender_FEMALE
gender = pb.Gender_female
} else {
gender = pb.Gender_MALE
gender = pb.Gender_male
}

avatar := urlFormatter.GetAvatarUrl(dbMessage.UserID, dbMessage.PhotoNumber)
Expand Down
88 changes: 88 additions & 0 deletions protobuf/generated/fantlab/pb/auth_models.pb.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading