当前位置:网站首页>In rails, when the resource creation operation fails and render: new is called, why must the URL be changed to the index URL of the resource?
In rails, when the resource creation operation fails and render: new is called, why must the URL be changed to the index URL of the resource?
2022-07-07 00:59:00 【fyin1314】
problem :
I have a resource called Books. I have a resource called books .It's listed as a resource properly in my routes file. It is correctly listed as a resource in my routing file .
I have a new action, which gives the new view the standard: I have a new action , It provides a standard for new views :
@book = Book.new
On the model, there are some attributes which are validated by presence, so if a save action fails, errors will be generated. On the model , Some properties are verified by existence , So if the save operation fails , An error is generated .
In my controller: In my controller :
@book = Book.create... # some logicif @book.save redirect_to(@book)else render :newend
This is pretty standard; This is very standard ;and the rationale for using render:new is so that the object is passed back to the view and errors can be reported, form entries re-filled, etc. Use render:new The basic principle of is to pass objects back to the view and report errors 、 Refill form entries, etc .
This works, except every time I'm sent back to the form (via render :new), my errors show up, but my URL is the INDEX URL, which is It works , Except every time I am sent back to the form ( By rendering :new) when , My mistakes will show up , But mine URL yes INDEX URL, It is
/books
Rather than instead of
/books/new
Which is where I started out in the first place. This is where I started .I have seen several others posts about this problem, but no answers. I have read several other posts on this issue , But there is no answer .At a minimum, one would assume it would land you at /books/create, which I also have a view file for (identical to new in this case). At least , People will assume that it will let you enter /books/create, I also have a view file ( In this case with new identical ).
I can do this: I can do this :
# if the book isn't saved thenflash[:error] = "Errors!"redirect_to new_book_path
But then the @book data is lost, along with the error messages, which is the entire point of having the form and the actions, etc. But then @book Data and error messages are lost , This is the whole meaning of having forms and operations .
Why is render :new landing me at /books, my index action, when normally that URL calls the INDEX method, which lists all the books? Why? render :new Log me in to /books, My indexing operation , Usually it's time to URL call INDEX Method , This method lists all books ?
Solution :
Reference resources : https://stackoom.com/en/question/ynXG边栏推荐
- windows安装mysql8(5分钟)
- 深度学习简史(一)
- Interface (interface related meaning, different abstract classes, interface callback)
- Learning notes 5: ram and ROM
- JS+SVG爱心扩散动画js特效
- Advanced learning of MySQL -- basics -- multi table query -- inner join
- dynamic programming
- 批量获取中国所有行政区域经边界纬度坐标(到县区级别)
- What is time
- Stm32f407 ------- SPI communication
猜你喜欢
【软件逆向-求解flag】内存获取、逆变换操作、线性变换、约束求解
[user defined type] structure, union, enumeration
【批处理DOS-CMD命令-汇总和小结】-跳转、循环、条件命令(goto、errorlevel、if、for[读取、切分、提取字符串]、)cmd命令错误汇总,cmd错误
How to judge whether an element in an array contains all attribute values of an object
stm32F407-------DAC数模转换
Dell笔记本周期性闪屏故障
集合(泛型 & List & Set & 自定义排序)
View remote test data and records anytime, anywhere -- ipehub2 and ipemotion app
英雄联盟|王者|穿越火线 bgm AI配乐大赛分享
New feature of Oracle 19C: automatic DML redirection of ADG, enhanced read-write separation -- ADG_ REDIRECT_ DML
随机推荐
paddlehub应用出现paddle包报错的问题
tensorflow 1.14指定gpu运行设置
城联优品入股浩柏国际进军国际资本市场,已完成第一步
from .cv2 import * ImportError: libGL.so.1: cannot open shared object file: No such file or direc
5种不同的代码相似性检测,以及代码相似性检测的发展趋势
【JVM调优实战100例】05——方法区调优实战(下)
Markov decision process
AI super clear repair resurfaces the light in Huang Jiaju's eyes, Lecun boss's "deep learning" course survival report, beautiful paintings only need one line of code, AI's latest paper | showmeai info
What kind of experience is it to realize real-time collaboration in jupyter
【JVM调优实战100例】04——方法区调优实战(上)
pyflink的安装和测试
集合(泛型 & List & Set & 自定义排序)
Memory optimization of Amazon memorydb for redis and Amazon elasticache for redis
Mujoco produces analog video
【软件逆向-求解flag】内存获取、逆变换操作、线性变换、约束求解
在jupyter中实现实时协同是一种什么体验
Advanced learning of MySQL -- basics -- multi table query -- subquery
Address information parsing in one line of code
重上吹麻滩——段芝堂创始人翟立冬游记
第七篇,STM32串口通信编程