ruby-on-rails - 我如何访问布尔值到rails中的其他控制器
问题描述
我有与多对一关联相关的 ProjectSite 模型和 ManagerRemark 模型。我的 MangerRemark 模型具有布尔值 true 和 false 我想将该布尔值访问到其他控制器视图。请帮忙。这是我的代码。我想在每个项目站点索引列表旁边打印决策布尔值我该怎么做?在其他控制器名称 new_manager_controller 视图中
project_sites_controller.rb
class ProjectSitesController < ApplicationController
before_action :authenticate_user!
before_action :is_project_site?, except: [:show]
before_action :set_project_site, only: [:show, :edit, :update, :destroy]
# GET /project_sites
# GET /project_sites.json
def index
@project_sites = ProjectSite.all.order("created_at DESC")
end
# GET /project_sites/1
# GET /project_sites/1.json
def show
@manager_remark = ManagerRemark.new
@manager_remark.project_site_id = @project_site.id
end
# GET /project_sites/new
def new
@project_site = ProjectSite.new
end
# GET /project_sites/1/edit
def edit
end
# POST /project_sites
# POST /project_sites.json
def create
@project_site = ProjectSite.new(project_site_params)
respond_to do |format|
if @project_site.save
format.html { redirect_to @project_site, notice: 'Project site was successfully created.' }
format.json { render :show, status: :created, location: @project_site }
else
format.html { render :new }
format.json { render json: @project_site.errors, status: :unprocessable_entity }
end
end
end
# PATCH/PUT /project_sites/1
# PATCH/PUT /project_sites/1.json
def update
respond_to do |format|
if @project_site.update(project_site_params)
format.html { redirect_to @project_site, notice: 'Project site was successfully updated.' }
format.json { render :show, status: :ok, location: @project_site }
else
format.html { render :edit }
format.json { render json: @project_site.errors, status: :unprocessable_entity }
end
end
end
# DELETE /project_sites/1
# DELETE /project_sites/1.json
def destroy
@project_site.destroy
respond_to do |format|
format.html { redirect_to project_sites_url, notice: 'Project site was successfully destroyed.' }
format.json { head :no_content }
end
end
private
# Use callbacks to share common setup or constraints between actions.
def set_project_site
@project_site = ProjectSite.find(params[:id])
end
# Never trust parameters frmanager_level_twoom the scary internet, only allow the white list through.
def project_site_params
params.require(:project_site).permit(:name, :date, :file)
end
def is_project_site?
redirect_to root_path unless (current_user.role=='project_site')
end
end
这就是我的管理备注控制器的外观。Manager_Remarks_controller.rb
class ManagerRemarksController < ApplicationController
def create
@manager_remark = ManagerRemark.new(remark_params)
@manager_remark.project_site_id = params[:project_site_id]
@manager_remark.save
redirect_to project_site_path(@manager_remark.project_site)
end
def remark_params
params.require(:manager_remark).permit(:name, :remark, :decision)
end
end
解决方案
推荐阅读
- swift - SwiftUI @State 变量未及时分配
- r - R:从数据框中相同因子水平的先前观察中提取数据
- laravel - Laravel 收集拒绝不删除项目
- xcode - 当我启动相机时,我在运行 tensorflow 时出现错误
- jquery - jquery检查两个div文本是否在iframe跨域内外相同
- css - 顺风暗模式切换有效,但样式不变
- mongodb - Moongose 按接近度和评分排序用户
- laravel - 监视文件更改和创建的文件和文件夹的命令
- ruby-on-rails - Ruby mongo - 数组映射添加另一个字段
- visual-studio-code - 使用 VSCode Intellisense 自动完成片段时,将花括号放在 C 中的同一行