Passed hardware components and benchmarks to create test view
This commit is contained in:
parent
dea08d15dd
commit
6cb2ac0263
@ -5,11 +5,37 @@
|
|||||||
|
|
||||||
<form class="twelve columns" action="/test/create" method="POST">
|
<form class="twelve columns" action="/test/create" method="POST">
|
||||||
<div class="row">
|
<div class="row">
|
||||||
|
<div class="columns three">
|
||||||
|
<label for="test_hardware">
|
||||||
|
Hardware Component:
|
||||||
|
<select id="test_hardware" class="u-full-width" name="test_hardware">
|
||||||
|
{{ range $hw := .Hardware }}
|
||||||
|
<option value="{{ $hw.ID }}">{{ $hw.Name }}</option>
|
||||||
|
{{ end }}
|
||||||
|
</select>
|
||||||
|
</label>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="columns nine">
|
||||||
<label for="test_name">
|
<label for="test_name">
|
||||||
Test name:
|
Test name:
|
||||||
<input id="test_name" class="u-full-width" type="text" name="test_name" placeholder="My hardware benchmarking test">
|
<input id="test_name" class="u-full-width" type="text" name="test_name" placeholder="My hardware benchmarking test">
|
||||||
</label>
|
</label>
|
||||||
</div>
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="row">
|
||||||
|
<div class="columns twelve">
|
||||||
|
<label for="test_benchmarks">
|
||||||
|
Benchmarks to Test:
|
||||||
|
<select id="test_benchmarks" class="u-full-width" name="test_benchmarks" multiple>
|
||||||
|
{{ range $bm := .Benchmarks }}
|
||||||
|
<option value="{{ $bm.ID }}">{{ $bm.Name }}</option>
|
||||||
|
{{ end }}
|
||||||
|
</select>
|
||||||
|
</label>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<label for="test_description">
|
<label for="test_description">
|
||||||
|
@ -2,6 +2,7 @@ package forms
|
|||||||
|
|
||||||
type TestForm struct {
|
type TestForm struct {
|
||||||
Name string `form:"test_name" validate:"required"`
|
Name string `form:"test_name" validate:"required"`
|
||||||
|
Description string `form:"test_description"`
|
||||||
Hardware int `form:"test_hardware" validate:"required"`
|
Hardware int `form:"test_hardware" validate:"required"`
|
||||||
Benchmarks []string `form:"test_benchmarks" validate:"required"`
|
Benchmarks []string `form:"test_benchmarks" validate:"required"`
|
||||||
}
|
}
|
||||||
|
@ -38,6 +38,16 @@ func TestGetView(c flamego.Context, t template.Template, data template.Data) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func TestGetCreate(t template.Template, data template.Data) {
|
func TestGetCreate(t template.Template, data template.Data) {
|
||||||
|
// add hardware components to template
|
||||||
|
var hardware []models.Hardware
|
||||||
|
models.DB.Find(&hardware)
|
||||||
|
data["hardware"] = hardware
|
||||||
|
|
||||||
|
// add benchmarks to template
|
||||||
|
var benchmarks []models.Benchmark
|
||||||
|
models.DB.Find(&benchmarks)
|
||||||
|
data["benchmarks"] = benchmarks
|
||||||
|
|
||||||
data["title"] = "Create a Test"
|
data["title"] = "Create a Test"
|
||||||
t.HTML(http.StatusOK, "test/create")
|
t.HTML(http.StatusOK, "test/create")
|
||||||
}
|
}
|
||||||
@ -56,6 +66,7 @@ func TestPostCreate(c flamego.Context, form forms.TestForm, errs binding.Errors)
|
|||||||
|
|
||||||
test := models.Test{
|
test := models.Test{
|
||||||
Name: form.Name,
|
Name: form.Name,
|
||||||
|
Description: form.Description,
|
||||||
HardwareID: form.Hardware,
|
HardwareID: form.Hardware,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user