рельсы с ошибкой, когда я добавляю одно действие в моей БД - PullRequest
0 голосов
/ 24 мая 2018

Я не могу создавать какие-либо действия, в журнале я вижу, что проблема в функции сохранения: вот мой код

Контроллер:

  def create
    @activity = Activity.new(activity_params)
    @activity.user = current_user
    if @activity.save
      flash[:notice] = "Votre activité a été créée !"
      redirect_to root_path
    else
      flash[:alert] = "Erreur lors la création"
      redirect_to root_path
    end
  end

Форма:

  <div class="form-group">
    <%= f.input :title, label: "Titre (optionnel)", class: "form-control" %>
  </div>

  <div class="form-group">
    <%= f.label :content, 'Contenu (requis)' %>
    <%= f.text_area :content, id: "wysiwyg" %>
  </div>

  <div class="form-group">
  <%= f.input :group_id, prompt: "- Choisir un groupe (requis) -", label: false, collection: current_user.groups.order('name') %>
  </div>

  <div class="form-group">
    <%= f.button :submit, @activity.new_record? ? "Créer l'activité" : "Mettre à jour l'activité", class: "btn btn-outline-primary btn-sm" %>
  </div>

журнал ошибок: я пытаюсь добавить это: помещает в журнал "@ activity.valid: $ {@ activity.valid?} \ N # {@ activity.errors.full_messages}"

верните мне эту строку: @ activity.valid: $ enj@activity.valid?} Перед самым: (0,2 мс) НАЧИНАЕТСЯ

Started POST "/activities" for 127.0.0.1 at 2018-05-24 17:21:49 +0200
Processing by ActivitiesController#create as JS
  Parameters: {"utf8"=>"✓", "authenticity_token"=>"Cq573getfK9HBo4U9xiftsdtmScb08A28AWCcwTq2+Csn7u2hmylpjMdaB5qtJ6ZfWoHV/TZ+zF0xtgPCCp69Q==", "activity"=>{"title"=>"Activity 1 ", "content"=>"<p>dzdzqdqzdqz</p>", "group_id"=>"2"}, "commit"=>"Créer l'activité"}
  User Load (4.6ms)  SELECT  "users".* FROM "users" WHERE "users"."id" = $1 ORDER BY "users"."id" ASC LIMIT $2  [["id", 2], ["LIMIT", 1]]
  ↳ /home/benjamin/.rbenv/versions/2.5.0/lib/ruby/gems/2.5.0/gems/activerecord-5.2.0.rc1/lib/active_record/log_subscriber.rb:98
   (0.2ms)  BEGIN
  ↳ app/controllers/activities_controller.rb:9
  Group Load (2.3ms)  SELECT  "groups".* FROM "groups" WHERE "groups"."id" = $1 LIMIT $2  [["id", 2], ["LIMIT", 1]]
  ↳ app/controllers/activities_controller.rb:9
   (0.2ms)  ROLLBACK
  ↳ app/controllers/activities_controller.rb:9
Redirected to http://localhost:3000/
Completed 200 OK in 19ms (ActiveRecord: 7.4ms)

#activities_controller.rb:9 =>     if @activity.save

Контроллер есть:

  def create
    @activity = Activity.new(activity_params)
    @activity.user = current_user
    if @activity.save
      flash[:notice] = "Votre activité a été créée !"
      redirect_to root_path
    else
      flash[:alert] = "Erreur lors la création"
      redirect_to root_path
    end
  end

ТамМодель активности:

class Activity < ApplicationRecord
  has_many :user_activities, dependent: :destroy
  has_many :users, through: :user_activities
  belongs_to :user, class_name: 'User'
  belongs_to :group
  validates :content, presence: true
end

и Модель пользователя:

class User < ApplicationRecord
  rolify
  devise :database_authenticatable, :registerable,
         :recoverable, :rememberable, :trackable, :validatable
  has_many :user_groups
  has_many :created_activities, class_name: 'Activity'
  has_many :user_activities
  has_many :activities, through: :user_activities

end

User_activity:

class UserActivity < ApplicationRecord
  belongs_to :activity
  belongs_to :user
  validates :user, uniqueness: { scope: :activity }

end

Таблица действий пользователя содержит user_id и activity_id (когда одинпользователь видит одну статью, я добавляю ее в таблицу) - Работа по созданию одной операции все еще не работает: /

Спасибо:)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...