livebud/bud

How to change default id:int to name:string in generated url path?

Open

#363 opened on Jan 22, 2023

View on GitHub
 (1 comment) (0 reactions) (0 assignees)JavaScript (211 forks)batch import
bughelp wantedimprovement

Repository metrics

Stars
 (5,391 stars)
PR merge metrics
 (No merged PRs in 30d)

Description

First of all thank you very much for the tool, very useful.
I have some questions waiting for your help.

1. how to change id:int to name:string?

If I run the following commands to generate controller and view, I got a generated path like // GET /pscluster/:pscluster_id/psmeta/:id. Do we have some cli flags to change ":pscluter_id int" to ":pscluster_name string"?

bud new controller pscluster index new create show edit update delete
bud new controller pscluster/psmeta create show edit update delete


// GET /pscluster/:pscluster_id/psmeta/:id

2. why this strange name generated?

when I run bud new controller pscluster/psmeta create show edit update delete, I got a strange struct name, which change psmeta to psmetum

// Psmetum struct
type Psmetum struct {
	ID int `json:"id"`
}

// Create psmetum
// POST /pscluster/:pscluster_id/psmeta
func (c *Controller) Create(ctx context.Context) (psmetum *Psmetum, err error) {
	return &Psmetum{
		ID: 0,
	}, nil
}

3. Underscores become dashes in url

bud new controller ps_cluster index new create show edit update delete
// GET /ps-cluster

Contributor guide