class Api::V1::Projects::DatasetsController < Api::V1::BaseController before_action :require_public_and_member_above before_action :find_dataset, only: [:update, :show] def create return render_error('该项目下已存在数据集!') if @project.project_dataset.present? @project_dataset = ProjectDataset.new(dataset_params.merge!(project_id: @project.id)) if @project_dataset.save! render_ok else render_error('创建数据集失败!') end end def update @project_dataset.attributes = dataset_params if @project_dataset.save! render_ok else render_error("更新数据集失败!") end end def show @attachments = kaminari_paginate(@project_dataset.attachments.includes(:author)) end private def dataset_params params.permit(:title, :description, :license_id, :paper_content) end def find_dataset @project_dataset = @project.project_dataset return render_not_found unless @project_dataset.present? end end