abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
dnes 17:28 | Bezpečnostní upozornění

Byly zveřejněny informace o bezpečnostní chybě CVE-2017-6074 v Linuxu zneužitelné k lokální eskalaci práv. Jde o chybu v podpoře DCCP (Datagram Congestion Control Protocol). Do linuxového jádra se dostala v říjnu 2005. V upstreamu byla opravena 17. února (commit). Bezpečnostní chyba byla nalezena pomocí nástroje syzkaller [Hacker News].

Ladislav Hagara | Komentářů: 2
dnes 15:00 | Zajímavý software

Společnost Valve vydala novou beta verzi SteamVR. Z novinek lze zdůraznit oficiální podporu Linuxu. Další informace o podpoře této platformy pro vývoj virtuální reality v Linuxu v diskusním fóru. Hlášení chyb na GitHubu.

Ladislav Hagara | Komentářů: 0
dnes 06:00 | Nová verze

Po necelém roce od vydání verze 0.67 byla vydána verze 0.68 populárního telnet a ssh klienta PuTTY. Podrobnosti v přehledu změn. Řešeny jsou také bezpečnostní chyby.

Ladislav Hagara | Komentářů: 0
včera 21:32 | Nasazení Linuxu

Canonical představuje nejnovější verzi chytré helmy DAQRI s Ubuntu pro rozšířenou realitu. K vidění bude příští týden v Barceloně na veletrhu Mobile World Congress 2017.

Ladislav Hagara | Komentářů: 0
včera 21:31 | Pozvánky

Pro zájemce o hlubší znalosti fungování operačních systémů připravila MFF UK nový předmět Pokročilé operační systémy, v rámci něhož se vystřídají přednášející nejen z řad pracovníků fakulty, ale dorazí také odborníci ze společností AVAST, Oracle, Red Hat a SUSE. Tento předmět volně navazuje na kurz Operační systémy ze zimního semestru, ale pokud máte praktické zkušenosti odjinud (například z přispívání do jádra Linuxu) a chcete si

… více »
Martin Děcký | Komentářů: 6
včera 21:30 | Pozvánky

Czech JBoss User Group Vás srdečně zve na setkání JBUG v Brně, které se koná ve středu 1. března 2017 v prostorách Fakulty Informatiky Masarykovy Univerzity v místnosti A318 od 18:00. Přednáší Tomáš Remeš a Matěj Novotný na téma CDI 2.0 - New and Noteworthy. Více informací na Facebooku a na Twitteru #jbugcz.

mjedlick | Komentářů: 0
20.2. 23:45 | Zajímavý software

Na blogu Qt bylo představeno Qt 3D Studio. Jedná se o produkt dosud známý pod názvem NVIDIA DRIVE™ Design Studio. NVIDIA jej věnovala Qt. Jedná se o několik set tisíc řádků zdrojového kódu. Qt 3D Studio bude stejně jako Qt k dispozici jak pod open source, tak pod komerční licencí. Ukázka práce s Qt 3D Studiem na YouTube.

Ladislav Hagara | Komentářů: 10
20.2. 17:50 | Komunita

Nadace The Document Foundation (TDF) zastřešující vývoj svobodného kancelářského balíku LibreOffice slaví 5 let od svého oficiálního vzniku. Nadace byla představena 28. září 2010. Formálně byla založena ale až 17. února 2012.

Ladislav Hagara | Komentářů: 0
20.2. 12:50 | Komunita

Mozilla.cz informuje, že dosud experimentální funkce Page Shot z programu Firefox Test Pilot (zprávička) se stane součástí Firefoxu. Page Shot je nástroj pro vytváření snímků webových stránek. Umí výběr oblasti, prvku stránky (např. odstavce), nebo uložení snímku celé stránky. Snímky lze ukládat na disk nebo nahrávat na server Mozilly. Nedávno bylo oznámeno, že se součástí Firefoxu stane Activity Stream.

Ladislav Hagara | Komentářů: 51
20.2. 04:10 | Nová verze

Po 10 týdnech vývoje od vydání Linuxu 4.9 (zprávička) oznámil Linus Torvalds, mj. již 20 let žijící v USA, vydání Linuxu 4.10 (LKML). Přehled nových vlastností a vylepšení například na Kernel Newbies a v Jaderných novinách (1, 2 a 3). Kódové jméno Linuxu 4.10 je Fearless Coyote.

Ladislav Hagara | Komentářů: 38
Jak se stavíte k trendu ztenčování přenosných zařízení (smartphony, notebooky)?
 (13%)
 (2%)
 (71%)
 (4%)
 (10%)
Celkem 685 hlasů
 Komentářů: 66, poslední dnes 18:57
Rozcestník

Dotaz: Ruby on Rails & Migrations

15.1.2006 17:19 dau | blog: dau | Brno
Ruby on Rails & Migrations
Přečteno: 176×

Zdravím, narazil jsem na problém, s nímž si nevím rady. Netuším, zda to způsobují Rails či MySQL, hádám, že spíš to druhé bude pravdou...

Zde uvádím část kódu, který by se měl postarat o vygenerování tabulky. Nutno dodat, že jsem postupoval podle tohoto návodu:

class AddPlanningTable < ActiveRecord::Migration

  def self.up

  	create_table :plans do |table|

  		table.column :treatment_id, :integer, :limit => 10, :default => 0

  		table.column :name, :string

  	end

  	add_index "plans", ["treatment_id"], :name => "fk_plans_treatment"
        execute 'ALTER TABLE plans ADD CONSTRAINT fk_plans_treatment FOREIGN KEY ( treatment_id ) REFERENCES treatments( id )'
                
  end

  def self.down
  	drop_table :plans
  end
end

Po zadání rake migrate se ovšem dozvím následující:

(in /home/dau/development/)
rake aborted!
Mysql::Error: Can't create table './oncosys_dev/#sql-a96_ab.frm' (errno: 150): ALTER TABLE plans ADD CONSTRAINT fk_plans_treatment FOREIGN KEY ( treatment_id ) REFERENCES treatments( id )

Zajímavé je, že to tabulku vytvoří, nicméně Rails na to reagují zmateně a nelze ji pak pomocí Migrations odstranit.

Vše je bez problému jen v případě, že v definici nepoužiji generování cizího klíče - ovšem to je právě to, co nepotřebuji. Cizí klíč v tabulce musí být nutně definován. Stejná chybová hláška se objeví i v případě, že tabulku vygeneruji bez cizího klíče a pak se snažím jej přidat přímo v mysql. Přiznám se, že jsem zmaten a nevím si rady.

Nevíte někdo, co s tím? Bez vyřešení tohoto problému se nemůžu pohnout dál. Ještě bych dodal, že používám Gentoo Linux, MySQL v. 4.0.25, Rails 1.0.0.

Není nic tak legračního, jako nechat ze sebe dělat totálního blbce.

Odpovědi

15.1.2006 18:03 dau | blog: dau | Brno
Rozbalit Rozbalit vše Re: Ruby on Rails & Migrations

Zahledal jsem na netu, chyba 105 nějakým způsobem opravdu souvisí s generováním cizího klíče, nicméně myslím, že všechny požadavky na indexy mám splněny. Pro pořádek ještě znovu udávám výpis struktury pár tabulek (s omezeným počtem hodnot):

CREATE TABLE machines (
  id tinyint(3) unsigned NOT NULL auto_increment,
  name varchar(50) NOT NULL default '',
  kind_of_machine varchar(5) default NULL,
  PRIMARY KEY  (id),
  UNIQUE KEY name (name)
) TYPE=InnoDB COMMENT='Table of machines';

-- --------------------------------------------------------

CREATE TABLE plans (
  id int(11) NOT NULL auto_increment,
  treatment_id int(10) default '0',
  name varchar(255) default NULL,
  PRIMARY KEY  (id),
  KEY treatment_id (treatment_id)
) TYPE=InnoDB;

-- --------------------------------------------------------

CREATE TABLE treatments (
  id int(10) unsigned NOT NULL auto_increment,
  patient_id int(10) unsigned default '0',
  machine_id tinyint(3) unsigned default '0',
  plan varchar(6) default NULL,
  description varchar(200) default NULL,
  PRIMARY KEY  (id),
  KEY plan (plan),
  KEY machine_id (machine_id),
  KEY patient_id (patient_id)
) TYPE=InnoDB COMMENT='Basic table with treatments';

-- 
-- Omezení pro tabulku `treatments`
-- 
ALTER TABLE `treatments`
  ADD CONSTRAINT `fk_treatments_machine` FOREIGN KEY (`machine_id`) REFERENCES `machines` (`id`),
  ADD CONSTRAINT `fk_treatments_patient` FOREIGN KEY (`patient_id`) REFERENCES `patients` (`id`);

Není nic tak legračního, jako nechat ze sebe dělat totálního blbce.
15.1.2006 18:17 Zdeněk Burda | skóre: 61 | blog: Zdendův blog | Praha
Rozbalit Rozbalit vše Re: Ruby on Rails & Migrations
Ahoj,

pro výpis kódu používej pre tag, code nezachová formátování (opravil jsem ti to).
-- Nezdar není hanbou, hanbou je strach z pokusu.
2.2.2006 11:33 kubicek | Praha
Rozbalit Rozbalit vše Re: Ruby on Rails & Migrations
V tabulce plans musite mit cizi klic treatment_id definovan uplne stejne jako primarni klic tabulky treatments. Tzn: treatment_id int(10) unsigned default '0',

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267   www.czech-server.cz
© 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.