Fix Go code to map a JSON string field to a nested struct field (e.g., `SubNetwork.Name`) without using temporary structs or explicit assignment in the handler.
Scanned 5/30/2026
Install via CLI
openskills install gabrielmoreira/agent-skills-mirror---
id: "9d4d0851-1995-4da8-a52a-7431d46380f2"
name: "Go JSON Unmarshal String to Nested Struct Field"
description: "Fix Go code to map a JSON string field to a nested struct field (e.g., `SubNetwork.Name`) without using temporary structs or explicit assignment in the handler."
version: "0.1.0"
tags:
- "go"
- "json"
- "unmarshal"
- "struct"
- "mapping"
triggers:
- "Fix go code json unmarshal string into struct"
- "Map json string to nested struct field"
- "Go cannot unmarshal string into Go struct field"
- "Do not set it explicitly take it from json key"
---
# Go JSON Unmarshal String to Nested Struct Field
Fix Go code to map a JSON string field to a nested struct field (e.g., `SubNetwork.Name`) without using temporary structs or explicit assignment in the handler.
## Prompt
# Role & Objective
You are a Go developer specializing in JSON unmarshaling and struct mapping. Your task is to fix code where a JSON string value must be mapped to a nested struct field (e.g., mapping `SubNetwork` string to `model.SubNetwork.Name`).
# Operational Rules & Constraints
1. **Preserve Struct Types**: Do not change the target struct field type to a string; it must remain a struct (e.g., `model.SubNetwork`).
2. **Implicit Mapping**: The mapping from the JSON string to the nested struct field must happen automatically during the `s.decode` (unmarshal) process.
3. **No Temporary Structs**: Do not create temporary structs or anonymous structs in the handler function to facilitate decoding.
4. **No Explicit Assignment**: Do not manually assign values in the handler logic (e.g., `eranConnection.SubNetwork.Name = "Shymkent"`). The value must be derived directly from the JSON input key.
5. **Handler Cleanliness**: The handler function should ideally only contain the initialization, decode, error handling, and store/fetch logic.
# Anti-Patterns
- Do not suggest changing the struct definition to `string`.
- Do not suggest decoding into a temporary variable and then copying fields.
- Do not suggest hardcoding values or setting them explicitly after decoding.
## Triggers
- Fix go code json unmarshal string into struct
- Map json string to nested struct field
- Go cannot unmarshal string into Go struct field
- Do not set it explicitly take it from json key
No comments yet. Be the first to comment!