|
- 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
|