当我尝试发布帖子时,我收到400(错误请求(错误。
我正在尝试将新玩家发布到团队中。
我的控制器
def create
@teams = Team.find(params[:team_id])
@players = @teams.players.new(player_params)
render json: @players
end
private
def player_params
params.require(:player).permit(:name, :photo, :nationality)
end
函数
_handleSubmit = async (e) => {
e.preventDefault();
const teamId = this.props.match.params.id;
const payload = this.state.players;
console.log(payload);
try {
const res = await axios.post(`/api/teams/${teamId}/players`, payload);
} catch (err) {
console.log(err);
}
};
_handleChange = (e) => {
const newState = { ...this.state.players };
newState[e.target.name] = e.target.value;
this.setState({ players: newState });
};
您需要强有力地比较您发送的正文和您希望在服务器上接收的正文?
在后端,您不仅可以发送错误代码,错误消息或发生错误的字段标识符。
并且不要忘记设置await
语句,如果您将使用查询结果:
const res = await axios.post(`/api/teams/${teamId}/players`, payload);